結果

問題 No.78 クジ付きアイスバー
コンテスト
ユーザー jj
提出日時 2017-03-20 05:28:58
言語 Fortran
(gFortran 15.2.0)
コンパイル:
gfortran _filename_ -O2 -o ./a.out
実行:
./a.out
結果
AC  
実行時間 1 ms / 5,000 ms
コード長 836 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 1,447 ms
コンパイル使用メモリ 38,784 KB
実行使用メモリ 6,144 KB
最終ジャッジ日時 2026-03-26 07:13:19
合計ジャッジ時間 3,611 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 35
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

program main
  implicit none
  integer*8::N,K,atari,buy,total
  !  character*50::S
  integer::S(50)
  integer::i
  data S/50*0/
  data atari/0/,buy/0/
  read *,N, K
  read '(50i1)',S
  do i=1,MIN(N,K)
     if(atari.eq.0) then
        buy   = buy   + 1
     else
        atari = atari - 1
     end if
     atari = atari + S(i)
  end do

  if(N.gt.K .or. atari.ge.buy) then
     print '(i0)', buy
     return
  end if

  !  print *,"first:", buy, atari

  if((K-N-1)/N.ge.1) then
     total = buy + (buy - atari) * ((K-N-1)/N)
  else
     total = buy
  end if

  !  print *,"second:", total, (K-N-1)/N

  buy = 0
  do i=1,(K-((K-N-1)/N+1)*N)
     if(atari.eq.0) then
        buy   = buy   + 1
     else
        atari = atari - 1
     end if
     atari = atari + S(i)
  end do
  total = total + buy
  print '(i0)', total
end program main

0