Submission #2503991


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

#define max(a,b) ((a>b)?(a):(b))
#define min(a,b) ((a<b)?(a):(b))

typedef long long LL;


int main(){
  int n;
  cin >> n;
  char c;
  int a;
  vector<int> whitePos(n),blackPos(n);
  for(int i=0;i<2*n;i++){
    cin >> c >> a;
    a--;
    if(c=='W'){
      whitePos[a]=i;
    }else{
      blackPos[a]=i;
    }
  }
  int wc=0,bc=0;
  int ans=0;
  while(1){
    if(whitePos[wc]<blackPos[bc]){
      ans+=whitePos[wc]-wc-bc;
      for(int i=wc+1;i<n;i++){
        if(whitePos[i]<whitePos[wc]){
          whitePos[i]++;
        }
      }
      for(int i=bc;i<n;i++){
        if(blackPos[i]<whitePos[wc]){
          blackPos[i]++;
        }
      }
      wc++;
    }else{
      ans+=blackPos[bc]-wc-bc;
      for(int i=wc;i<n;i++){
        if(whitePos[i]<blackPos[bc]){
          whitePos[i]++;
        }
      }
      for(int i=bc+1;i<n;i++){
        if(blackPos[i]<blackPos[bc]){
          blackPos[i]++;
        }
      }
      bc++;
    }
    if(wc==n){
      for(;bc<n-1;bc++){
        for(int i=bc+1;i<n;i++){
          if(blackPos[i]<blackPos[bc]){
            ans++;
          }
        }
      }
      break;
    }else if(bc==n){
      for(;wc<n-1;wc++){
        for(int i=wc+1;i<n;i++){
          if(whitePos[i]<whitePos[wc]){
            ans++;
          }
        }
      }
      break;
    }
  }
  cout << ans << endl;
  return 0;
}

Submission Info

Submission Time
Task E - Sorted and Sorted
User yamunaku
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1466 Byte
Status WA
Exec Time 26 ms
Memory 384 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 600
Status
AC × 3
AC × 19
WA × 17
Set Name Test Cases
Sample 0_000.txt, 0_001.txt, 0_002.txt
All 0_000.txt, 0_001.txt, 0_002.txt, 1_003.txt, 1_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt, 1_015.txt, 1_016.txt, 1_017.txt, 1_018.txt, 1_019.txt, 1_020.txt, 1_021.txt, 1_022.txt, 1_023.txt, 1_024.txt, 1_025.txt, 1_026.txt, 1_027.txt, 1_028.txt, 1_029.txt, 1_030.txt, 1_031.txt, 1_032.txt, 1_033.txt, 1_034.txt, 1_035.txt
Case Name Status Exec Time Memory
0_000.txt AC 1 ms 256 KB
0_001.txt AC 1 ms 256 KB
0_002.txt AC 1 ms 256 KB
1_003.txt AC 1 ms 256 KB
1_004.txt AC 1 ms 256 KB
1_005.txt WA 1 ms 256 KB
1_006.txt WA 1 ms 256 KB
1_007.txt AC 1 ms 256 KB
1_008.txt WA 1 ms 256 KB
1_009.txt AC 1 ms 256 KB
1_010.txt AC 1 ms 256 KB
1_011.txt AC 1 ms 256 KB
1_012.txt AC 1 ms 256 KB
1_013.txt AC 1 ms 256 KB
1_014.txt WA 20 ms 256 KB
1_015.txt WA 4 ms 256 KB
1_016.txt WA 14 ms 256 KB
1_017.txt WA 7 ms 256 KB
1_018.txt WA 1 ms 256 KB
1_019.txt WA 3 ms 256 KB
1_020.txt WA 16 ms 256 KB
1_021.txt AC 3 ms 256 KB
1_022.txt AC 2 ms 256 KB
1_023.txt AC 6 ms 256 KB
1_024.txt AC 9 ms 256 KB
1_025.txt WA 26 ms 256 KB
1_026.txt WA 23 ms 256 KB
1_027.txt WA 23 ms 256 KB
1_028.txt WA 23 ms 256 KB
1_029.txt WA 23 ms 256 KB
1_030.txt WA 23 ms 256 KB
1_031.txt WA 26 ms 256 KB
1_032.txt AC 8 ms 256 KB
1_033.txt AC 8 ms 256 KB
1_034.txt AC 8 ms 256 KB
1_035.txt AC 9 ms 384 KB