結果
問題 | No.1041 直線大学 |
ユーザー |
|
提出日時 | 2020-05-01 22:11:34 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 89 ms / 2,000 ms |
コード長 | 1,247 bytes |
コンパイル時間 | 403 ms |
コンパイル使用メモリ | 7,296 KB |
実行使用メモリ | 12,288 KB |
最終ジャッジ日時 | 2024-11-16 07:55:19 |
合計ジャッジ時間 | 4,980 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 37 |
コンパイルメッセージ
Syntax OK
ソースコード
#input of int(split by space) def get_i() return gets.chomp.split(" ").map(&:to_i) end #input of float(split by space) def get_f() return gets.chomp.split(" ").map(&:to_f) end #input of string(split by space) def get() return gets.chomp.split(" ") end #input of string(split per one character) def get_nsp() return gets.chomp.split("") end #yes or no decision def yn_judge(bool,y="Yes",n="No") return bool ? y : n end #create of array def array(size1,init=nil,size2=-1) if size2==-1 return Array.new(size1){init} else return Array.new(size2){Array.new(size1){init}} end end def max(a,b) return a>b ? a : b end def min(a,b) return a>b ? b : a end INF=Float::INFINITY N=gets.to_i xy=array(N) x=array(N) y=array(N) N.times do|i| xy[i]=get_f x[i]=xy[i][0] y[i]=xy[i][1] end xy.sort!{|a,b| a[0]<=>b[0]} x=x.tally y=y.tally xm=0 ym=0 x.each do|k,v| xm=v if xm<v end y.each do|k,v| ym=v if ym<v end ans=max(xm,ym) (N-1).times do|i| kind={} (i+1).upto(N-1) do|j| next if (xy[i+1][1]-xy[i][1]).zero? val=(xy[j][0]-xy[i][0])/(xy[j][1]-xy[i][1]) kind[val]=0 if kind[val].nil? kind[val]+=1 end kind.each do|k,v| ans=v+1 if ans<v+1 end end puts ans