結果
問題 |
No.112 ややこしい鶴亀算
|
ユーザー |
|
提出日時 | 2015-10-16 00:47:27 |
言語 | Ruby (3.4.1) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,091 bytes |
コンパイル時間 | 36 ms |
コンパイル使用メモリ | 7,552 KB |
実行使用メモリ | 12,416 KB |
最終ジャッジ日時 | 2024-07-21 16:42:56 |
合計ジャッジ時間 | 2,849 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 11 WA * 12 |
コンパイルメッセージ
Syntax OK
ソースコード
#! ruby # yukicoder My Practice # author: Leonardone @ NEETSDKASU # 頭中を整理するためメモ # 亀2匹 # 4 4 # 亀1匹鶴1羽 # 2 4 # 鶴2羽 # 2 2 # 亀3匹 # 8 8 8 # 亀2匹鶴1羽 # 6 6 8 # 亀1匹鶴2羽 # 4 6 6 # 鶴3羽 # 4 4 4 # 亀4匹 # 12 12 12 12 # 亀3匹鶴1羽 # 12 10 10 10 # 亀2匹鶴2羽 # 8 8 10 10 # 亀1匹鶴3羽 # 6 8 8 8 # 鶴4羽 # 6 6 6 6 # 同一Nで亀MAXから鶴1羽増えるにごとに最小値が2ずつ減っていく # 亀MAXとみたとき足の本数は (N - 1) * 4 # 数列の最大値と最小値が同じでこの値なら亀MAX # 数列の最大値と最小値が同じでこの値じゃないなら鶴MAX # 数列の最大値と最小値が違うなら 亀MAX値と最小値の差の半分が鶴の数(この値があれば亀の数は自明) N = gets.to_i a = gets.chomp.split.map(&:to_i) kameMax = (N - 1) * 4 aMin, aMax = a.minmax if aMin == aMax if aMin == kameMax puts "0 %d" % [N] # 亀のみ else puts "%d 0" % [N] # 鶴のみ end else turu = (kameMax - aMin) / 2 kame = N - turu puts "%d %d" % [turu, N - kame] end