제출 #500494

#제출 시각아이디문제언어결과실행 시간메모리
500494KhizriArranging Shoes (IOI19_shoes)C++17
10 / 100
19 ms3020 KiB
#include "shoes.h" #include <bits/stdc++.h> using namespace std; int res=1e7; map<vector<int>,int>mp; bool check(vector<int>&vt){ for(int i=0;i<vt.size();i+=2){ if(vt[i]<0&&vt[i+1]>0&&abs(vt[i])==vt[i+1]){ } else{ return false; } } return true; } void funk(vector<int>vt,int ans,int u,int v){ if(u!=v){ swap(vt[u],vt[v]); ans++; } if(check(vt)){ res=min(res,ans); return; } if(mp[vt]>0&&mp[vt]<=ans) return; mp[vt]=ans; for(int i=0;i<vt.size()-1;i++){ funk(vt,ans,i,i+1); } } long long count_swaps(vector<int> s) { if(s.size()<=4){ funk(s,1,-1,-1); return res-1; } long long n=s.size(); return n*(n-1)/2; }

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

shoes.cpp: In function 'bool check(std::vector<int>&)':
shoes.cpp:7:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    7 |     for(int i=0;i<vt.size();i+=2){
      |                 ~^~~~~~~~~~
shoes.cpp: In function 'void funk(std::vector<int>, int, int, int)':
shoes.cpp:28:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   28 |     for(int i=0;i<vt.size()-1;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...