結果

問題 No.652 E869120 and TimeZone
ユーザー snow4726snow4726
提出日時 2018-03-10 19:25:39
言語 C
(gcc 12.3.0)
結果
WA  
実行時間 -
コード長 1,991 bytes
コンパイル時間 269 ms
コンパイル使用メモリ 31,232 KB
実行使用メモリ 6,820 KB
最終ジャッジ日時 2024-10-14 17:53:14
合計ジャッジ時間 1,535 ms
ジャッジサーバーID
(参考情報)
judge5 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 WA -
testcase_01 AC 1 ms
6,820 KB
testcase_02 WA -
testcase_03 WA -
testcase_04 WA -
testcase_05 AC 1 ms
6,816 KB
testcase_06 WA -
testcase_07 WA -
testcase_08 WA -
testcase_09 AC 1 ms
6,816 KB
testcase_10 AC 1 ms
6,816 KB
testcase_11 AC 1 ms
6,816 KB
testcase_12 WA -
testcase_13 WA -
testcase_14 WA -
testcase_15 WA -
testcase_16 WA -
testcase_17 WA -
testcase_18 AC 1 ms
6,816 KB
testcase_19 WA -
testcase_20 WA -
testcase_21 WA -
testcase_22 AC 1 ms
6,816 KB
testcase_23 WA -
testcase_24 WA -
testcase_25 AC 1 ms
6,820 KB
testcase_26 AC 1 ms
6,816 KB
testcase_27 AC 1 ms
6,820 KB
testcase_28 AC 1 ms
6,816 KB
testcase_29 AC 1 ms
6,820 KB
testcase_30 AC 1 ms
6,816 KB
testcase_31 AC 1 ms
6,820 KB
testcase_32 AC 1 ms
6,816 KB
testcase_33 AC 1 ms
6,820 KB
testcase_34 AC 1 ms
6,820 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<stdio.h>
#include<stdlib.h>

#define MOJI 13

int main(){

    char* str;
    char* a;
    char* b;
    char* s;
    char* x;
    char sym;
    int i = 10;
    int j = 0;
    /* int m; */
    int d1,d2,dd1,dd2;
    double d;
    int data1;
    double data2;
    int tmp;
    int zzz = 0;

    str = (char*)calloc(MOJI+1+1,sizeof(char));
    fgets(str,MOJI+1+1,stdin);

    s = (char*)calloc(5,sizeof(char));
    x = (char*)calloc(3,sizeof(char));
    a = (char*)calloc(3,sizeof(char));
    b = (char*)calloc(3,sizeof(char));

    a[0] = str[0];
    a[1] = str[1];
    a[2] = '\0';
    dd1 = atoi(a);

    /***/
    /* printf("a\n"); */

    b[0] = str[3];
    b[1] = str[4];
    b[2] = '\0';
    dd2 = atoi(b);

    /***/
    /* printf("b\n"); */

    sym = str[9];

    while( str[i] != '\n' && str[i] != '\0' ){
        s[j] = str[i];
        i++;
        j++;
    }
    s[j] = '\0';
    /* m = j; */

    /***/
    /* printf("c\n"); */

    i = 0;
    while( s[i] != '.' && s[i] != '\0' ){
        x[i] = s[i];
        i++;
    }
    x[i] = '\0';
    d1 = atoi(x);
    i++;

    /***/
    /* printf("d\n"); */

    if( s[i-1] != '\0' && s[i-1] == '.' ){
        j = 0;
        while( s[i] != '\0' ){
            x[j] = s[i];
            i++;
            j++;
        }
        x[j] = '\0';
        d2 = atoi(x);
    }else{
        d2 = 0;
    }

    /***/
    /* printf("e\n"); */

    d = (double)d1 + (double)d2/10.0;
    if( sym == '-' ) d = 24.0 - d;
    d -= 9.0;

    data1 = (int)d;
    data2 = d - (double)((int)d);

/*
    printf("dd2 = %d\n",dd2);
*/

    tmp = dd2 + (int)(60.0*data2);
    if( data2 != 0.0 ){
        dd2 = tmp;
        if( tmp < 0 ) dd2 = 60 + tmp;
    }

/*
    printf("data2 = %lf\n",data2);
    printf("tmp = %d\n",tmp);
*/

    if( tmp < 0 ) zzz = -1;
    if( dd1 + data1 + zzz < 0 ){
        dd1 = 24 - dd1 + data1 + zzz;
    }else{
        dd1 += data1;
    }

    dd1 %= 24;
    dd2 %= 60;

    printf("%02d:%02d\n",dd1,dd2);

    return 0;

}
0