Submission #66357928
Source Code Expand
#include<iostream>
#include<vector>
using namespace std;
using P = pair<int,int>;
void solve(){
int N;cin>>N;
vector<P> rl;
string S;cin>>S;
for(int i=0;i<N;++i){
if(rl.size()!=0 && rl.back().first == S[i]-'0'){
rl.back().second++;
} else {
rl.emplace_back(S[i]-'0',1);
}
}
int M = rl.size();
int count = 0;
for(int i=0;i<M;++i){
if(rl[i].first==1)count+=rl[i].second;
}
int INF = 1<<30;
vector<vector<long long>> dp(M+1,vector<long long>(3,INF));
dp[0][0] = dp[0][1] = dp[0][2] = 0;
for(int i=0;i<M;++i){
if(rl[i].first==0){
dp[i+1][0] = min(dp[i+1][0],dp[i][0]);
dp[i+1][2] = min(dp[i+1][2],dp[i][0]+rl[i].second);
dp[i+1][2] = min(dp[i+1][2],dp[i][2]+rl[i].second);
dp[i+1][1] = min(dp[i+1][1],dp[i][2]);
}
if(rl[i].first==1) {
dp[i+1][0] = min(dp[i+1][0],dp[i][0]+rl[i].first);
dp[i+1][1] = min(dp[i+1][1],dp[i][1]+rl[i].first);
dp[i+1][2] = min(dp[i+1][2],dp[i][0]);
}
}
cout << min(min(dp[M][0],dp[M][1]),dp[M][2]) << endl;
}
int main(){
int T;cin>>T;
for(;T--;){
solve();
}
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - Flip to Gather |
| User | ponzoie |
| Language | C++ 23 (gcc 12.2) |
| Score | 0 |
| Code Size | 1100 Byte |
| Status | WA |
| Exec Time | 30 ms |
| Memory | 16020 KiB |
Judge Result
| Set Name | Sample | All | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 0 / 400 | ||||||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_00.txt | AC | 1 ms | 3488 KiB |
| 00_sample_01.txt | WA | 1 ms | 3484 KiB |
| 01_test_00.txt | WA | 30 ms | 3532 KiB |
| 01_test_01.txt | WA | 27 ms | 3448 KiB |
| 01_test_02.txt | WA | 26 ms | 3532 KiB |
| 01_test_03.txt | WA | 25 ms | 3472 KiB |
| 01_test_04.txt | WA | 25 ms | 3540 KiB |
| 01_test_05.txt | WA | 24 ms | 3408 KiB |
| 01_test_06.txt | WA | 25 ms | 3560 KiB |
| 01_test_07.txt | WA | 25 ms | 3592 KiB |
| 01_test_08.txt | WA | 24 ms | 3436 KiB |
| 01_test_09.txt | WA | 20 ms | 3536 KiB |
| 01_test_10.txt | WA | 12 ms | 3564 KiB |
| 01_test_11.txt | WA | 12 ms | 3576 KiB |
| 01_test_12.txt | WA | 12 ms | 3632 KiB |
| 01_test_13.txt | WA | 7 ms | 3588 KiB |
| 01_test_14.txt | WA | 7 ms | 3588 KiB |
| 01_test_15.txt | WA | 7 ms | 3616 KiB |
| 01_test_16.txt | WA | 7 ms | 3748 KiB |
| 01_test_17.txt | WA | 6 ms | 3772 KiB |
| 01_test_18.txt | WA | 6 ms | 3772 KiB |
| 01_test_19.txt | WA | 9 ms | 7532 KiB |
| 01_test_20.txt | WA | 9 ms | 7656 KiB |
| 01_test_21.txt | WA | 10 ms | 7764 KiB |
| 01_test_22.txt | WA | 10 ms | 9668 KiB |
| 01_test_23.txt | WA | 4 ms | 3860 KiB |
| 01_test_24.txt | WA | 6 ms | 6208 KiB |
| 01_test_25.txt | AC | 4 ms | 3644 KiB |
| 01_test_26.txt | AC | 4 ms | 3596 KiB |
| 01_test_27.txt | AC | 15 ms | 16020 KiB |