結果

問題 No.91 赤、緑、青の石
ユーザー toshiro_yanagi
提出日時 2019-01-05 14:15:36
言語 Nim
(2.2.0)
結果
WA  
実行時間 -
コード長 710 bytes
コンパイル時間 3,147 ms
コンパイル使用メモリ 65,200 KB
実行使用メモリ 6,948 KB
最終ジャッジ日時 2024-07-01 06:22:32
合計ジャッジ時間 3,972 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 13 WA * 15
権限があれば一括ダウンロードができます

ソースコード

diff #

import strutils, math


proc nextString: string =
  result = ""
  while not endOfFile stdin:
    let nextChar = readChar stdin
    case nextChar
    of '\r':
      discard
    of "\n"[0], ' ':
      break
    else:
      add result, nextChar


proc nextInt: int =
  parseInt nextString()


let
  R, G, B = nextInt()
  S = [R, G, B].min

var
  L = [R, G, B].max
  M = [R, G, B].sum - S - L
  ans = 0


proc main: void =
  (ans, M, L) = (S, M - S, L - S)

  for j in 0 ..< 2:
    for i in 0 ..< 2:
      let tmp = min(M, L div 3)
      ans += tmp
      M -= tmp
      L -= tmp * 3
  
      if L < M:
        swap(M, L)  
    
    ans += L div 5  
    L -= (L div 5) * 5

  echo ans


when isMainModule:
  main()
0