Submission #68915995
Source Code Expand
#include<iostream>
#include<vector>
#include<string>
#include<algorithm>
#include<cmath>
using namespace std;
#define int long long
int n;
string s;
vector<int> a_pos, b_pos;
signed main()
{
cin >> n >> s;
for(int i=0;i<s.size();i++)
if(s[i] == 'A') a_pos.push_back(i);
else b_pos.push_back(i);
int swp1 = 0, swp2 = 0;
for(int i=0;i<a_pos.size();i++) swp1 += abs(a_pos[i] - 2 * i);
for(int i=0;i<b_pos.size();i++) swp1 += abs(b_pos[i] - (2 * i + 1));
for(int i=0;i<b_pos.size();i++) swp2 += abs(b_pos[i] - 2 * i);
for(int i=0;i<a_pos.size();i++) swp2 += abs(a_pos[i] - (2 * i + 1));
cout << min(swp1/2,swp2/2) << endl;
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | C - Alternated |
| User | yangyang1000 |
| Language | C++ 20 (gcc 12.2) |
| Score | 350 |
| Code Size | 711 Byte |
| Status | AC |
| Exec Time | 25 ms |
| Memory | 13908 KiB |
Compile Error
Main.cpp: In function ‘int main()’:
Main.cpp:16:18: warning: comparison of integer expressions of different signedness: ‘long long int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
16 | for(int i=0;i<s.size();i++)
| ~^~~~~~~~~
Main.cpp:20:18: warning: comparison of integer expressions of different signedness: ‘long long int’ and ‘std::vector<long long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
20 | for(int i=0;i<a_pos.size();i++) swp1 += abs(a_pos[i] - 2 * i);
| ~^~~~~~~~~~~~~
Main.cpp:21:18: warning: comparison of integer expressions of different signedness: ‘long long int’ and ‘std::vector<long long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
21 | for(int i=0;i<b_pos.size();i++) swp1 += abs(b_pos[i] - (2 * i + 1));
| ~^~~~~~~~~~~~~
Main.cpp:22:18: warning: comparison of integer expressions of different signedness: ‘long long int’ and ‘std::vector<long long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
22 | for(int i=0;i<b_pos.size();i++) swp2 += abs(b_pos[i] - 2 * i);
| ~^~~~~~~~~~~~~
Main.cpp:23:18: warning: comparison of integer expressions of different signedness: ‘long long int’ and ‘std::vector<long long int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
23 | for(int i=0;i<a_pos.size();i++) swp2 += abs(a_pos[i] - (2 * i + 1));
| ~^~~~~~~~~~~~~
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 350 / 350 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample_01.txt, sample_02.txt, sample_03.txt |
| All | random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, sample_01.txt, sample_02.txt, sample_03.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| random_01.txt | AC | 24 ms | 13804 KiB |
| random_02.txt | AC | 20 ms | 10436 KiB |
| random_03.txt | AC | 24 ms | 13756 KiB |
| random_04.txt | AC | 9 ms | 6948 KiB |
| random_05.txt | AC | 25 ms | 13852 KiB |
| random_06.txt | AC | 12 ms | 7664 KiB |
| random_07.txt | AC | 20 ms | 13432 KiB |
| random_08.txt | AC | 20 ms | 13516 KiB |
| random_09.txt | AC | 20 ms | 13484 KiB |
| random_10.txt | AC | 20 ms | 13908 KiB |
| random_11.txt | AC | 21 ms | 12368 KiB |
| random_12.txt | AC | 21 ms | 12416 KiB |
| random_13.txt | AC | 1 ms | 3472 KiB |
| sample_01.txt | AC | 1 ms | 3444 KiB |
| sample_02.txt | AC | 1 ms | 3480 KiB |
| sample_03.txt | AC | 1 ms | 3488 KiB |