結果
問題 |
No.3007 組み紐
|
ユーザー |
![]() |
提出日時 | 2025-01-07 19:01:51 |
言語 | D (dmd 2.109.1) |
結果 |
AC
|
実行時間 | 1 ms / 2,000 ms |
コード長 | 544 bytes |
コンパイル時間 | 917 ms |
コンパイル使用メモリ | 87,708 KB |
実行使用メモリ | 6,816 KB |
最終ジャッジ日時 | 2025-01-07 19:01:53 |
合計ジャッジ時間 | 1,492 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
ソースコード
import std.algorithm, std.array, std.conv, std.stdio, std.range; void main() { auto N = readln.split.to!(int[])[0]; if (N == 1) { auto K = cast(int) readln.split.length; auto L = cast(int) readln.split.length; writeln((K - L)%2 == 0 ? "YES" : "NO"); return; } auto A = (N+1).iota.array, B = A.dup; readln.split.to!(int[]).each!(i => swap(A[i-1], A[i])); readln.split.to!(int[]).each!(i => swap(B[i-1], B[i])); writeln(equal(A, B) ? "YES" : "NO"); void swap(ref int i, ref int j) { auto tmp = i; i = j; j = i; } }