結果
問題 | No.345 最小チワワ問題 |
ユーザー | wreulicke |
提出日時 | 2016-03-14 08:05:15 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 952 bytes |
コンパイル時間 | 16,284 ms |
コンパイル使用メモリ | 234,684 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-09-25 11:38:58 |
合計ジャッジ時間 | 15,349 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 29 |
ソースコード
package main import ( "bufio" "fmt" "os" "strconv" ) var sc = bufio.NewScanner(os.Stdin) func nextInt() int { sc.Scan() i, _ := strconv.Atoi(sc.Text()) return i } func nextStr() string { sc.Scan() return sc.Text() } func get(n int) []string { inputs := make([]string, n) for index := range inputs { inputs[index] = nextStr() } return inputs } func main() { sc.Split(bufio.ScanWords) str := nextStr() chiwawa := -1 cc := make([]int, 100) wc := make([]int, 100) ccount, wcount := 0, 0 for i, c := range str { if c == 'c' { cc[ccount] = i + 1 ccount++ } else if c == 'w' { wc[wcount] = i + 1 wcount++ } } if len(wc) < 2 { fmt.Println(chiwawa) } for i := wcount - 2; i > -1; i-- { for _, index := range cc { if index == 0 { continue } if index > wc[i] { break } if wc[i+1]-index+1 < chiwawa || chiwawa == -1 { chiwawa = wc[i+1] - index + 1 } } } fmt.Println(chiwawa) }