Submission #1930614


Source Code Expand

#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;

int main() {
    int N;
    cin >> N;
    int rainy_daytime1[N];
    char from_to;
    int rainy_daytime2[N];
    for (int i=0; i<N; i++) {
       cin >> rainy_daytime1[i] >> from_to >> rainy_daytime2[i];
    }
    sort(rainy_daytime1,rainy_daytime1+N);
    sort(rainy_daytime2,rainy_daytime2+N);
    for (int i=0; i<N; i++) {
        bool f=false;
        int x=rainy_daytime1[i];
        int y=rainy_daytime2[i];
        int y1=rainy_daytime2[i]/100;
        if (y>2400) {
            rainy_daytime2[i]=y-2400;
        }
        x=x%100;
        if (y>=56 && y<=59) {
            f=true;
        }
        y=y%100;
        if (x>=11 && x<=100) {
            if (x%10>=5) {
                 rainy_daytime1[i]=(rainy_daytime1[i]-(x%10)+5);
            } else {
                rainy_daytime1[i]=(rainy_daytime1[i]-(x%10));
            }
        } else if (x>=1 && x<=9) {
            if (x>=1 && x<=4) {
                rainy_daytime1[i]=(rainy_daytime1[i]-x);   
            } else if (x>=6 && x<=9) {
                 rainy_daytime1[i]=(rainy_daytime1[i]-x+5);   
            }
        }
        if ((y>=11 && y<=100) && y%5!=0) {
            if (f==true && (rainy_daytime2[i]>=56 && rainy_daytime2[i]<=59)) {
                rainy_daytime2[i]=100;
            } else if (f==true && (rainy_daytime2[i]>=1000)) {
                rainy_daytime2[i]=rainy_daytime2[i]-y+100;
            } else if (y<55 && y%10>5) {
                rainy_daytime2[i]=(rainy_daytime2[i]+(10-y%10));
                } else if (y>55 && rainy_daytime2[i]%100>=56) {
                     rainy_daytime2[i]=(rainy_daytime2[i]-(rainy_daytime2[i]%100)+100);      
                } else {
                    rainy_daytime2[i]=(rainy_daytime2[i]-(y%10)+5);
            }
        } else if (y>=1 && y<=9) {
            if (y>=1 && y<=4) {
                rainy_daytime2[i]=(rainy_daytime2[i]-y+5);   
            } else if (y>=6 && y<=9) {
                 rainy_daytime2[i]=(rainy_daytime2[i]+(10-y));   
            }
        }
    }
    int t1, t2;
    for (int i=0; i<N; i++) {
        if (i==0) {
            t1=rainy_daytime1[i];
            t2=rainy_daytime2[i];
        } else {
            if (rainy_daytime1[i]<=t2) {
                t1=min(t1,rainy_daytime1[i]);
                t2=max(t2,rainy_daytime2[i]);
            } else {
                printf("%04d-%04d\n",t1,t2);
                t1=rainy_daytime1[i];
                t2=rainy_daytime2[i];
            }
        }
        if (i==(N-1)) {
            printf("%04d-%04d\n",t1,t2);
        }
    }
    return 0;
}

Submission Info

Submission Time
Task D - 感雨時刻の整理
User tom123
Language C++ (GCC 5.4.1)
Score 100
Code Size 2717 Byte
Status AC
Exec Time 24 ms
Memory 512 KB

Judge Result

Set Name all
Score / Max Score 100 / 100
Status
AC × 48
Set Name Test Cases
all 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, cho_cho_chokudai.txt, chokudai_ga_cho.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt
Case Name Status Exec Time Memory
00_sample_01.txt AC 1 ms 256 KB
00_sample_02.txt AC 1 ms 256 KB
00_sample_03.txt AC 1 ms 256 KB
cho_cho_chokudai.txt AC 21 ms 512 KB
chokudai_ga_cho.txt AC 22 ms 512 KB
test_01.txt AC 1 ms 256 KB
test_02.txt AC 1 ms 256 KB
test_03.txt AC 1 ms 256 KB
test_04.txt AC 1 ms 256 KB
test_05.txt AC 1 ms 256 KB
test_06.txt AC 1 ms 256 KB
test_07.txt AC 1 ms 256 KB
test_08.txt AC 1 ms 256 KB
test_09.txt AC 2 ms 256 KB
test_10.txt AC 2 ms 256 KB
test_11.txt AC 2 ms 256 KB
test_12.txt AC 2 ms 256 KB
test_13.txt AC 1 ms 256 KB
test_14.txt AC 2 ms 256 KB
test_15.txt AC 2 ms 256 KB
test_16.txt AC 1 ms 256 KB
test_17.txt AC 2 ms 256 KB
test_18.txt AC 1 ms 256 KB
test_19.txt AC 2 ms 256 KB
test_20.txt AC 2 ms 256 KB
test_21.txt AC 24 ms 512 KB
test_22.txt AC 24 ms 512 KB
test_23.txt AC 23 ms 512 KB
test_24.txt AC 23 ms 512 KB
test_25.txt AC 23 ms 512 KB
test_26.txt AC 24 ms 512 KB
test_27.txt AC 21 ms 512 KB
test_28.txt AC 23 ms 512 KB
test_29.txt AC 1 ms 256 KB
test_30.txt AC 1 ms 256 KB
test_31.txt AC 5 ms 256 KB
test_32.txt AC 1 ms 256 KB
test_33.txt AC 16 ms 384 KB
test_34.txt AC 1 ms 256 KB
test_35.txt AC 1 ms 256 KB
test_36.txt AC 24 ms 512 KB
test_37.txt AC 23 ms 512 KB
test_38.txt AC 24 ms 512 KB
test_39.txt AC 23 ms 512 KB
test_40.txt AC 23 ms 512 KB
test_41.txt AC 21 ms 512 KB
test_42.txt AC 22 ms 512 KB
test_43.txt AC 21 ms 512 KB