Submission #143422

#TimeUsernameProblemLanguageResultExecution timeMemory
143422daniel920712Arranging Shoes (IOI19_shoes)C++14
10 / 100
34 ms3592 KiB
#include <iostream>
#include <stdio.h>
#include <vector>
#include <algorithm>
#include <assert.h>

using namespace std;
int S1[1005];
int S2[1005];
int all[1005];
bool F(int a,int b)
{
    return a<b;
}
long long count_swaps(std::vector<int> S)
{
    long long ans1=0,ans2=0,ans3=0,ans4=0,N=S.size(),i,j,k,now=0,x,y;
    long long t;
    now=0;
    for(i=0;i<N/2;i++)
    {
        x=y=0;
        for(j=0;j<N;j++) S1[j]=S[j];
        for(j=0;j<N;j++) S2[j]=S[j];
        for(j=2*i;j<N;j++)
        {
            if(S1[j]<0)
            {
                t=0-S1[j];
                for(k=j;k>2*i;k--)
                {
                    x++;
                    swap(S1[k],S1[k-1]);

                }
                break;
            }
        }
        for(j=2*i+1;j<N;j++)
        {
            if(S1[j]==t)
            {
                for(k=j;k>2*i+1;k--)
                {
                    x++;
                    swap(S1[k],S1[k-1]);
                }
                break;
            }

        }

        for(j=2*i;j<N;j++)
        {
            if(S2[j]>0)
            {
                t=0-S2[j];
                break;
            }
        }
        for(j=2*i;j<N;j++)
        {
            if(S2[j]==t)
            {
                for(k=j;k>2*i;k--)
                {
                    y++;
                    swap(S2[k],S2[k-1]);
                }
                break;
            }

        }
        for(j=2*i+1;j<N;j++)
        {
            if(S2[j]==0-t)
            {
                for(k=j;k>2*i+1;k--)
                {
                    y++;
                    swap(S2[k],S2[k-1]);
                }
                break;
            }

        }
        if(x<=y)
        {
            ans1+=x;
            for(j=0;j<N;j++) S[j]=S1[j];
        }
        else
        {
            ans1+=y;
            for(j=0;j<N;j++) S[j]=S2[j];
        }
    }


    return ans1;
}

Compilation message (stderr)

shoes.cpp: In function 'long long int count_swaps(std::vector<int>)':
shoes.cpp:17:22: warning: unused variable 'ans2' [-Wunused-variable]
     long long ans1=0,ans2=0,ans3=0,ans4=0,N=S.size(),i,j,k,now=0,x,y;
                      ^~~~
shoes.cpp:17:29: warning: unused variable 'ans3' [-Wunused-variable]
     long long ans1=0,ans2=0,ans3=0,ans4=0,N=S.size(),i,j,k,now=0,x,y;
                             ^~~~
shoes.cpp:17:36: warning: unused variable 'ans4' [-Wunused-variable]
     long long ans1=0,ans2=0,ans3=0,ans4=0,N=S.size(),i,j,k,now=0,x,y;
                                    ^~~~
shoes.cpp:17:60: warning: variable 'now' set but not used [-Wunused-but-set-variable]
     long long ans1=0,ans2=0,ans3=0,ans4=0,N=S.size(),i,j,k,now=0,x,y;
                                                            ^~~
shoes.cpp:76:24: warning: 't' may be used uninitialized in this function [-Wmaybe-uninitialized]
             if(S2[j]==0-t)
                       ~^~
#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...