| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1337663 | khanhphucscratch | Miners (IOI07_miners) | C++20 | 1599 ms | 100780 KiB |
#include<bits/stdc++.h>
using namespace std;
inline void chmax(int &a, int b)
{
a = max(a, b);
}
inline int cost(int a, int b, int c)
{
vector<int> vec;
if(a > 0) vec.push_back(a);
if(b > 0) vec.push_back(b);
if(c > 0) vec.push_back(c);
sort(vec.begin(), vec.end());
vec.erase(unique(vec.begin(), vec.end()), vec.end());
return vec.size();
}
int dp[100005][16][16], a[100005];
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(0);
int n; cin>>n;
for(int i = 1; i <= n; i++){
char x; cin>>x;
if(x == 'M') a[i] = 1;
else if(x == 'B') a[i] = 2;
else a[i] = 3;
}
for(int i = 0; i <= n; i++){
for(int j = 0; j < 16; j++){
for(int k = 0; k < 16; k++) dp[i][j][k] = -1e9;
}
}
dp[0][0][0] = 0;
for(int i = 0; i < n; i++){
for(int j = 0; j < 16; j++){
for(int k = 0; k < 16; k++){
int x1 = (j >> 2), y1 = j%4;
int x2 = (k >> 2), y2 = k%4;
//Add to one
int target = (j >> 2) + (a[i+1] << 2);
chmax(dp[i+1][target][k], dp[i][j][k] + cost(x1, y1, a[i+1]));
target = (k >> 2) + (a[i+1] << 2);
chmax(dp[i+1][j][target], dp[i][j][k] + cost(x2, y2, a[i+1]));
//Add to two
}
}
}
int ans = 0;
for(int i = 0; i < 16; i++){
for(int j = 0; j < 16; j++) chmax(ans, dp[n][i][j]);
}
cout<<ans;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
