제출 #217548

#제출 시각아이디문제언어결과실행 시간메모리
2175482fat2codeArranging Shoes (IOI19_shoes)C++17
10 / 100
168 ms147552 KiB
#include "shoes.h" #include <bits/stdc++.h> #define ll long long #define ld long double #define all(a) (a).begin(), (a).end() #pragma GCC optimize("O3") #pragma GCC optimize("Ofast") #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native") #define sz() size() #define fr first #define sc second #define pi pair<int,int> #define pii pair<pair<int,int>,int> #define mp make_pair //#define int long long #define rc(s) return cout<<s,0 #define rcc(s) cout<<s,exit(0) using namespace std; const int mod=1e9+7; const int modp=1999999973; const int modulo=998244353; long long ans,aib[100005],n; vector<long long>arr(100005); vector<long long>neimperecheat[100005]; queue<long long>q[100005]; void update(long long pos,long long val){ while(pos<=n){ aib[pos]+=val; pos+=(pos&-pos); } } long long sum(long long pos){ long long rs=0; while(pos>=1){ rs+=aib[pos]; pos-=(pos&-pos); } return rs; } long long count_swaps(std::vector<int> s) { ios_base::sync_with_stdio(false);cin.tie(0);cerr.tie(0);cout.tie(0); srand(chrono::steady_clock::now().time_since_epoch().count()); n=s.size(); long long cnt=-1; for(int i=0;i<s.size();i++){ if(s[i]<0){ cnt+=2; arr[i+1]=cnt; q[-s[i]].push(cnt+1); } } for(int i=0;i<s.size();i++){ if(s[i]>0){ arr[i+1]=q[s[i]].front(); q[s[i]].pop(); } } for(int i=n;i>=1;i--){ ans+=sum(arr[i]); update(arr[i],1LL); } return ans; }

컴파일 시 표준 에러 (stderr) 메시지

shoes.cpp: In function 'long long int count_swaps(std::vector<int>)':
shoes.cpp:50:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int i=0;i<s.size();i++){
                 ~^~~~~~~~~
shoes.cpp:57:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int i=0;i<s.size();i++){
                 ~^~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...