結果
問題 |
No.2655 Increasing Strides
|
ユーザー |
![]() |
提出日時 | 2025-04-25 14:02:05 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 738 bytes |
コンパイル時間 | 15,402 ms |
コンパイル使用メモリ | 245,168 KB |
実行使用メモリ | 7,844 KB |
最終ジャッジ日時 | 2025-04-25 14:02:25 |
合計ジャッジ時間 | 17,404 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 34 |
ソースコード
package main import . "fmt" func main() { var n int Scan(&n) odd := make([]int, 0, n/2+1) even := make([]int, 0, n/2+1) oddsum,evensum := 0,0 for i := 1; i <= n; i++ { if i%2==0 { even=append(even,i) evensum += i } else { odd=append(odd,i) oddsum += i } } if evensum%2!=0 || oddsum%2!=0 { Println("No") return } oddsum /= 2 evensum /= 2 for len(odd) > 0 && oddsum > 0 { l := len(odd)-1 x := odd[l] odd = odd[:l] if x <= oddsum { oddsum -= x } } if oddsum != 0 { Println("No") return } for len(even) > 0 && evensum > 0 { l := len(even)-1 x := even[l] even = even[:l] if x <= evensum { evensum -= x } } if evensum == 0 { Println("Yes") } else { Println("No") } }