제출 #1291903

#제출 시각아이디문제언어결과실행 시간메모리
1291903lukaye_19Arranging Shoes (IOI19_shoes)C++20
10 / 100
13 ms1964 KiB
#include <bits/stdc++.h>
using namespace std;

int count_swaps(vector<int>shoes)
{
    int n = shoes.size() / 2;
    bool samesize = true;
    bool leftrightshoes = true;
    
    for (int i = 0; i < n * 2; i++) 
    {
       int a = shoes[i];
        
        if (i != 0)
        {
            if (a + shoes[i - 1] == 0 || a + shoes[i - 1] == a * 2) samesize = false;
        }
        if ((i <= n - 1 && a > 0) || (i > n - 1 && i <= n * 2 - 1 && a < 0)) leftrightshoes = false;
        
        shoes[i] = a;
    }
    
    if (n == 1)
    {
        if (shoes[0] > shoes[1])
        {
            return 1;
        }
        else
        {
            return 0;
        }
    }
    else if (samesize)
    {
        int answer = 0;
        
        for (int i = 0; i < n * 2; i += 2)
        {
            if (i % 2 == 0 && shoes[i] > 0)
            {
                answer++;
            }
        }
        
        return answer;
    }
    else if (leftrightshoes)
    {
        int answer = (n * (n - 1)) / 2;
        
        return answer;
    }
    
    return 0;
}
#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...