Submission #69752269
Source Code Expand
Copy
#include <stdio.h>int N, K;int P[212345];int main(void) {int i;if (scanf("%d%d", &N, &K) != 2) return 1;for (i = 1; i <= N; i++) {if (scanf("%d", &P[i]) != 1) return 1;}for (i = N; i >= 1; i--) {if (P[i] != i) {/* 定位置にない最大の要素が見つかったので、それが K - 1 以下かを判定する */puts(i <= K - 1 ? "Yes" : "No");return 0;}}/* 定位置にない要素は無かった */puts("Yes");return 0;
#include <stdio.h>
int N, K;
int P[212345];
int main(void) {
int i;
if (scanf("%d%d", &N, &K) != 2) return 1;
for (i = 1; i <= N; i++) {
if (scanf("%d", &P[i]) != 1) return 1;
}
for (i = N; i >= 1; i--) {
if (P[i] != i) {
/* 定位置にない最大の要素が見つかったので、それが K - 1 以下かを判定する */
puts(i <= K - 1 ? "Yes" : "No");
return 0;
}
}
/* 定位置にない要素は無かった */
puts("Yes");
return 0;
}
/*
1 2 3
3 2 1
3 1 2
1 3 2
のようにすれば、1を介して任意の2要素の入れ替えが可能
すなわち、P_i <= K - 1 である任意の要素について、
条件を満たす他の任意の要素との入れ替えが可能
逆に、P_i > K - 1 であれば、1 とも入れ替えできないので、他とも入れ替えできない
*/
Submission Info
| Submission Time | |
|---|---|
| Task | A - Sum Sort |
| User | mikecat |
| Language | C (gcc 12.2.0) |
| Score | 200 |
| Code Size | 867 Byte |
| Status | AC |
| Exec Time | 16 ms |
| Memory | 2416 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 200 / 200 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_01, 00_sample_02 |
| All | 00_sample_01, 00_sample_02, 01_randsmall_0, 01_randsmall_1, 01_randsmall_2, 01_randsmall_3, 02_randmidi_0, 02_randmidi_1, 02_randmidi_2, 02_randmidi_3, 03_rand_0, 03_rand_1, 03_rand_2, 03_rand_3, 04_randmax_0, 04_randmax_1, 04_randmax_2, 04_randmax_3, corner_01 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_01 | AC | 0 ms | 1524 KiB |
| 00_sample_02 | AC | 0 ms | 1564 KiB |
| 01_randsmall_0 | AC | 0 ms | 1628 KiB |
| 01_randsmall_1 | AC | 0 ms | 1528 KiB |
| 01_randsmall_2 | AC | 0 ms | 1636 KiB |
| 01_randsmall_3 | AC | 0 ms | 1560 KiB |
| 02_randmidi_0 | AC | 0 ms | 1504 KiB |
| 02_randmidi_1 | AC | 1 ms | 1628 KiB |
| 02_randmidi_2 | AC | 1 ms | 1624 KiB |
| 02_randmidi_3 | AC | 1 ms | 1620 KiB |
| 03_rand_0 | AC | 6 ms | 1736 KiB |
| 03_rand_1 | AC | 12 ms | 2132 KiB |
| 03_rand_2 | AC | 14 ms | 2136 KiB |
| 03_rand_3 | AC | 1 ms | 1588 KiB |
| 04_randmax_0 | AC | 15 ms | 2348 KiB |
| 04_randmax_1 | AC | 15 ms | 2400 KiB |
| 04_randmax_2 | AC | 16 ms | 2416 KiB |
| 04_randmax_3 | AC | 13 ms | 2332 KiB |
| corner_01 | AC | 0 ms | 1628 KiB |