Submission #1559174
Source Code Expand
/* ▄███████▀▀▀▀▀▀███████▄ ░▐████▀▒ЗАПУСКАЕМ▒▀██████▄ ░███▀▒▒▒▒▒ДЯДЮ▒▒▒▒▒▒▀█████ ░▐██▒▒▒▒▒▒БОГДАНА▒▒▒▒▒████▌ ░▐█▌▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒████▌ ░░█▒▄▀▀▀▀▀▄▒▒▄▀▀▀▀▀▄▒▐███▌ ░░░▐░░░▄▄░░▌▐░░░▄▄░░▌▐███▌ ░▄▀▌░░░▀▀░░▌▐░░░▀▀░░▌▒▀▒█▌ ░▌▒▀▄░░░░▄▀▒▒▀▄░░░▄▀▒▒▄▀▒▌ ░▀▄▐▒▀▀▀▀▒▒▒▒▒▒▀▀▀▒▒▒▒▒▒█ ░░░▀▌▒▄██▄▄▄▄████▄▒▒▒▒█▀ ░░░░▄██████████████▒▒▐▌ ░░░▀███▀▀████▀█████▀▒▌ ░░░░░▌▒▒▒▄▒▒▒▄▒▒▒▒▒▒▐ ░░░░░▌▒▒▒▒▀▀▀▒▒▒▒▒▒▒▐ */ #pragma GCC optimize("Ofast") #include <iostream> #include <vector> #include <string> #include <algorithm> #include <cstdio> #include <numeric> #include <cstring> #include <ctime> #include <cstdlib> #include <set> #include <map> #include <unordered_map> #include <unordered_set> #include <list> #include <cmath> #include <bitset> #include <cassert> #include <queue> #include <stack> #include <deque> #include <cassert> #include <iomanip> #include <random> using namespace std; #define ll long long #define ld long double #define null NULL #define prev prev228 #define next next228 #define index index228 #define count count228 const int N = 100 * 1000 + 228; int a[N]; int n; inline bool bad(int i) { return i == a[i]; } signed main() { scanf("%d", &n); for (int i = 1; i <= n; ++i) { scanf("%d", &a[i]); } int i = 1; int res = 0; while (i <= n) { int j = i; if (a[i] != i) { ++i; continue; } while (j + 1 <= n && bad(j + 1)) { ++j; } int len = j - i + 1; res += (len + 1) / 2; i = j + 1; } printf("%d\n", res); return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Derangement |
User | godwind |
Language | C++14 (GCC 5.4.1) |
Score | 400 |
Code Size | 2282 Byte |
Status | AC |
Exec Time | 11 ms |
Memory | 640 KB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:72:17: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d", &n); ^ ./Main.cpp:74:21: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d", &a[i]); ^
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 400 / 400 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 0_000.txt, 0_001.txt, 0_002.txt, 0_003.txt |
All | 0_000.txt, 0_001.txt, 0_002.txt, 0_003.txt, 1_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
0_000.txt | AC | 1 ms | 256 KB |
0_001.txt | AC | 1 ms | 256 KB |
0_002.txt | AC | 1 ms | 256 KB |
0_003.txt | AC | 1 ms | 256 KB |
1_004.txt | AC | 1 ms | 256 KB |
1_005.txt | AC | 10 ms | 640 KB |
1_006.txt | AC | 10 ms | 640 KB |
1_007.txt | AC | 10 ms | 640 KB |
1_008.txt | AC | 10 ms | 640 KB |
1_009.txt | AC | 10 ms | 640 KB |
1_010.txt | AC | 10 ms | 640 KB |
1_011.txt | AC | 10 ms | 640 KB |
1_012.txt | AC | 10 ms | 640 KB |
1_013.txt | AC | 11 ms | 640 KB |
1_014.txt | AC | 10 ms | 640 KB |