結果
問題 | No.78 クジ付きアイスバー |
ユーザー |
|
提出日時 | 2016-03-05 20:21:47 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 2 ms / 5,000 ms |
コード長 | 732 bytes |
コンパイル時間 | 13,961 ms |
コンパイル使用メモリ | 221,528 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-08 01:37:06 |
合計ジャッジ時間 | 15,083 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 35 |
ソースコード
package mainimport ("bufio""fmt""os""strconv")var sc = bufio.NewScanner(os.Stdin)func main() {sc.Split(bufio.ScanWords)n, k := nextInt(), nextInt()s := nextLine()ns := make([]int, n)for i, r := range s {v, _ := strconv.Atoi(string(r))ns[i] = v}c, w := 0, 0for i, v := range ns {if w == 0 {c++} else {w--}if i+1 == k {fmt.Println(c)return}w += v}if w >= c {fmt.Println(c)return}k -= nc += (k / n) * (c - w)k %= nfor i := 0; i < k; i++ {if w == 0 {c++} else {w--}w += ns[i]}fmt.Println(c)}func nextLine() string {sc.Scan()return sc.Text()}func nextInt() int {i, _ := strconv.Atoi(nextLine())return i}