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
AC × 3
AC × 16
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