# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
167402 | 2019-12-08T08:24:53 Z | Nightlight | Miners (IOI07_miners) | C++14 | 356 ms | 1016 KB |
#include<bits/stdc++.h> using namespace std; int n; string s; vector<int>v; int dp[2][4][4][4][4]; int cnt(int m, int b, int f){ int rsm, rsb, rsf; if(m==3) rsm=0; else rsm=1<<m; if(b==3) rsb=0; else rsb=1<<b; if(f==3) rsf=0; else rsf=1<<f; int rs=rsm|rsb|rsf; int cnt=__builtin_popcount(rs); return cnt; } int main(){ scanf("%d", &n); cin>>s; v.resize(n); for(int i=0; i<n; i++){ if(s[i]=='M') v[i]=0; else if(s[i]=='B') v[i]=1; else v[i]=2; } for(int i=n-1; i>=0; i--){ for(int j=0; j<4; j++){ for(int k=0; k<4; k++){ for(int l=0; l<4; l++){ for(int m=0; m<4; m++){ dp[i%2][j][k][l][m]=max(dp[(i+1)%2][k][v[i]][l][m]+cnt(j, k, v[i]), dp[(i+1)%2][j][k][m][v[i]]+cnt(l, m, v[i])); } } } } } printf("%d\n", dp[0][3][3][3][3]); return 0; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 380 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 256 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 376 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 6 ms | 256 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 20 ms | 376 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 37 ms | 376 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 90 ms | 520 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 267 ms | 752 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 356 ms | 1016 KB | Output is correct |