제출 #650157

#제출 시각아이디문제언어결과실행 시간메모리
650157activedeltorreArranging Shoes (IOI19_shoes)C++14
10 / 100
18 ms3524 KiB
#include <iostream>
#include <vector>
using namespace std;
long long count_swaps(vector<int>vec)
{
    int n=vec.size();
    int fre[2005];
    int fre2[2005],k;
    long long suma=0,i,j,minim,curr,u,h;
    for(k=1; k<=n/2; k++)
    {
        for(i=1; i<=n; i++)
        {
            fre[i]=-1;
            fre2[i]=-1;
        }
        for(i=0; i<vec.size(); i++)
        {
            if(vec[i]>0)
            {
                if(fre[vec[i]]==-1)
                {
                    fre[vec[i]]=i;
                }
            }
            else
            {
                if(fre2[-vec[i]]==-1)
                {
                    fre2[-vec[i]]=i;
                }
            }
        }
        minim=2*n;
        for(i=1;i<=n;i++)
        {
            if(fre[i]!=-1)
            {
                if(fre[i]>fre2[i])
                {
                    curr=fre[i]+fre2[i]-1;
                }
                else
                {
                    curr=fre[i]+fre2[i];
                }
            }
            if(curr<minim)
            {
                u=fre[i];
                h=fre2[i];
                minim=curr;
            }
        }
        suma=suma+minim;
        vec.erase(vec.begin()+max(u,h));
        vec.erase(vec.begin()+min(u,h));
    }
    return suma;
}

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

shoes.cpp: In function 'long long int count_swaps(std::vector<int>)':
shoes.cpp:17:19: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |         for(i=0; i<vec.size(); i++)
      |                  ~^~~~~~~~~~~
shoes.cpp:9:24: warning: unused variable 'j' [-Wunused-variable]
    9 |     long long suma=0,i,j,minim,curr,u,h;
      |                        ^
shoes.cpp:9:37: warning: 'u' may be used uninitialized in this function [-Wmaybe-uninitialized]
    9 |     long long suma=0,i,j,minim,curr,u,h;
      |                                     ^
shoes.cpp:48:13: warning: 'curr' may be used uninitialized in this function [-Wmaybe-uninitialized]
   48 |             if(curr<minim)
      |             ^~
#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...