# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
258571 | 2020-08-06T07:18:25 Z | dantoh000 | Restore Array (RMI19_restore) | C++14 | 13 ms | 512 KB |
#include <bits/stdc++.h> using namespace std; int n,m; int l[10005],r[10005],k[10005],val[10005]; int ans[10005]; int main(){ scanf("%d%d",&n,&m); for (int i = 0; i < m; i++){ scanf("%d%d%d%d",&l[i],&r[i],&k[i],&val[i]); } if (n <= 18){ for (int mask = 0; mask < (1<<n); mask++){ bool can = 1; for (int i = 0; i < m && can; i++){ int ct1 = 0; for (int j = l[i]; j <= r[i] && can; j++){ if (mask&(1<<j)) ct1++; } int ct0 = r[i]-l[i]+1-ct1; int chk = ct0 >= k[i] ? 0 : 1; can &= (chk == val[i]); } if (can){ for (int i = 0; i < n; i++){ printf("%d ",(mask>>i)&1); } return 0; } } } else{ for (int i = 0; i < m; i++){ if (k[i] != 1) return 0; if (val[i] == 1){ for (int j = l[i]; j <= r[i]; j++){ ans[j] = 1; } } } for (int i = 0; i < m; i++){ if (val[i] == 0){ bool have = 0; for (int j = l[i]; j <= r[i]; j++){ if (ans[j] == 0) have = 1; } if (!have){ printf("-1\n"); return 0; } } } for (int i = 0; i < n; i++){ printf("%d ",ans[i]); } } }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 384 KB | Output is correct |
2 | Correct | 0 ms | 384 KB | Output is correct |
3 | Correct | 1 ms | 384 KB | Output is correct |
4 | Correct | 1 ms | 384 KB | Output is correct |
5 | Incorrect | 10 ms | 256 KB | Unexpected end of file - int32 expected |
6 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 12 ms | 512 KB | Output is correct |
2 | Correct | 12 ms | 512 KB | Output is correct |
3 | Correct | 13 ms | 512 KB | Output is correct |
4 | Correct | 12 ms | 512 KB | Output is correct |
5 | Correct | 6 ms | 512 KB | Output is correct |
6 | Correct | 7 ms | 512 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 12 ms | 512 KB | Output is correct |
2 | Correct | 12 ms | 512 KB | Output is correct |
3 | Correct | 13 ms | 512 KB | Output is correct |
4 | Correct | 12 ms | 512 KB | Output is correct |
5 | Correct | 6 ms | 512 KB | Output is correct |
6 | Correct | 7 ms | 512 KB | Output is correct |
7 | Incorrect | 4 ms | 512 KB | Unexpected end of file - int32 expected |
8 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 384 KB | Output is correct |
2 | Correct | 0 ms | 384 KB | Output is correct |
3 | Correct | 1 ms | 384 KB | Output is correct |
4 | Correct | 1 ms | 384 KB | Output is correct |
5 | Incorrect | 10 ms | 256 KB | Unexpected end of file - int32 expected |
6 | Halted | 0 ms | 0 KB | - |