# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1116090 | 2024-11-21T08:59:02 Z | ezzzay | Ekoeko (COCI21_ekoeko) | C++14 | 23 ms | 29776 KB |
#include<bits/stdc++.h> using namespace std; #define int long long #define ff first #define ss second #define pb push_back const int N=3e5+5; vector<int>a[N],b[N]; int p[N]; int bit[N]; int find(int idx){ int s=0; while(idx>0){ s+=bit[idx]; idx-= idx & -idx; } return s; } void update(int idx, int val){ while(idx<N){ bit[idx]+=val; idx+= idx & -idx; } } signed main(){ int n; cin>>n; string s; cin>>s; for(int i=0;i<2*n;i++){ if(i<n)a[s[i]].pb(i); else b[s[i]].pb(i); } for(int i=n-1;i>=0;i--){ p[ b[s[i]].back() - n +1 ] =i+1; b[s[i]].pop_back(); } int ans=0; for(int i=1;i<=n;i++){ continue; update(p[i],1); ans+=i-find(p[i]); } cout<<ans; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 23 ms | 29776 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 23 ms | 29776 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 23 ms | 29776 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 4 ms | 16976 KB | Output is correct |
2 | Incorrect | 3 ms | 16976 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Runtime error | 23 ms | 29776 KB | Execution killed with signal 11 |
2 | Halted | 0 ms | 0 KB | - |