# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
411161 | 2021-05-24T12:37:12 Z | 반딧불(#7588) | 여별 열쇠 (JOI15_keys) | C++14 | 39 ms | 340 KB |
#include <bits/stdc++.h> using namespace std; typedef long long ll; int n, m, k; int s[22], e[22]; bool chk[22]; int ans; vector<pair<int, int> > vec; int main(){ scanf("%d %d %d", &n, &m, &k); for(int i=0; i<n; i++){ scanf("%d %d", &s[i], &e[i]); vec.push_back(make_pair(s[i], i)); vec.push_back(make_pair(e[i], i)); } sort(vec.begin(), vec.end()); for(int d=0; d<(1<<n); d++){ if(__builtin_popcount(d) != k) continue; int sum = 0, openPrev = 0; bool open = 0; for(int i=0; i<(int)vec.size(); i++){ auto p = vec[i]; int x = p.second, t = p.first; if(!open) sum += (t - openPrev); openPrev = t; if(!chk[x] && !((d>>x)&1)) open = true; else if(i < (int)vec.size()-1 && chk[vec[i+1].second] && !((d>>vec[i+1].second)&1)) open = true; else open = false; chk[x] = !chk[x]; } if(!open) sum += m - openPrev; ans = max(ans, sum); } printf("%d", ans); }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 340 KB | Output is correct |
2 | Correct | 36 ms | 268 KB | Output is correct |
3 | Correct | 4 ms | 204 KB | Output is correct |
4 | Correct | 26 ms | 288 KB | Output is correct |
5 | Correct | 4 ms | 204 KB | Output is correct |
6 | Correct | 1 ms | 204 KB | Output is correct |
7 | Correct | 39 ms | 204 KB | Output is correct |
8 | Correct | 13 ms | 204 KB | Output is correct |
9 | Correct | 4 ms | 204 KB | Output is correct |
10 | Correct | 18 ms | 288 KB | Output is correct |
11 | Correct | 36 ms | 272 KB | Output is correct |
12 | Correct | 6 ms | 204 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 340 KB | Output is correct |
2 | Correct | 36 ms | 268 KB | Output is correct |
3 | Correct | 4 ms | 204 KB | Output is correct |
4 | Correct | 26 ms | 288 KB | Output is correct |
5 | Correct | 4 ms | 204 KB | Output is correct |
6 | Correct | 1 ms | 204 KB | Output is correct |
7 | Correct | 39 ms | 204 KB | Output is correct |
8 | Correct | 13 ms | 204 KB | Output is correct |
9 | Correct | 4 ms | 204 KB | Output is correct |
10 | Correct | 18 ms | 288 KB | Output is correct |
11 | Correct | 36 ms | 272 KB | Output is correct |
12 | Correct | 6 ms | 204 KB | Output is correct |
13 | Incorrect | 1 ms | 204 KB | Output isn't correct |
14 | Halted | 0 ms | 0 KB | - |