AtCoder Beginner Contest 001

Submission #119863

Source codeソースコード

<?php
$inputs = array();
fscanf(STDIN, "%d", $a);
for ($i=0;$i < $a;$i++) {
    fscanf(STDIN, "%s", $inputs[$i]);
}

// echo $ret .  ' ' . $w . "\n";

// 初期化
$rain_data = array();
for ($i=0;$i<24;$i++) {
    for ($j=0;$j<12;$j++) {
        $rain_data[$i][$j] = 0;
    }
}
$rain_data[24][0] = 0;

foreach ($inputs as $input) {
    $time = explode('-', $input);
    $time[0] = roundTime($time[0]);
    $time[1] = roundTime($time[1]);

    $start_time_hour_key = sprintf('%d', substr($time[0], 0, 2));
    $start_time_min_key  = floor( (int) substr($time[0], 2, 2) / 5);
    $end_time_hour_key   = sprintf('%d', substr($time[1], 0, 2));
    $end_time_min_key    = floor( (int) substr($time[1], 2, 2) / 5);

    for ($i=$start_time_hour_key;$i<=$end_time_hour_key;$i++) {
        if ($start_time_hour_key == $end_time_hour_key) {
            for ($j=$start_time_min_key;$j<=$end_time_min_key;$j++) {
                $rain_data[$i][$j] = 1;
            }
        } elseif ($i == $end_time_hour_key) {
            for ($j=0;$j<=$end_time_min_key;$j++) {
                $rain_data[$i][$j] = 1;
            }
        } else {
            for ($j=$start_time_min_key;$j<=12;$j++) {
                $rain_data[$i][$j] = 1;
            }
        }
    }
}

$output = array();
$is_process = false;
foreach ($rain_data as $hour => $mins) {
    foreach ($mins as $key => $val) {
        if ($val === 1) {
            if ($is_process === false) {
                $minute = $key * 5;
                $hour = sprintf('%02d', $hour);
                $minute = sprintf('%02d', $minute);
                $start_time = $hour . $minute;
                $is_process = true;
            } else {
                $minute = $key * 5;
                $hour = sprintf('%02d', $hour);
                $minute = sprintf('%02d', $minute);
                $end_time = $hour . $minute;
            }
        } else {
            if ($is_process === true) {
                $output[] = $start_time . '-' . $end_time;
                $is_process = false;
            }
        }
    }
}
if ($is_process === true) {
    $output[] = $start_time . '-' . $end_time;
}

// output
foreach ($output as $val) {
    echo $val ."\n";
}

function roundTime($start_time) {
    round($start_time);
    $last_keta = substr($start_time, -1);
    $first_keta = substr($start_time, 0, 3);
    if (0 <= $last_keta && $last_keta < 5) {
        $last_keta = 0;
    } else {
        $last_keta = 5;
    }

    return $first_keta . $last_keta;
}
?>

Submission

Task問題 D - 感雨時刻の整理
User nameユーザ名 shibu_t
Created time投稿日時
Language言語 PHP (PHP 5.3.10)
Status状態 WA
Score得点 0
Source lengthソースコード長 2589 Byte
File nameファイル名
Exec time実行時間 ms
Memory usageメモリ使用量 -

Test case

Set

Set name Score得点 / Max score Cases
all 0 / 100 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

Test case

Case name Status状態 Exec time実行時間 Memory usageメモリ使用量
00_sample_01.txt WA
00_sample_02.txt AC 53 ms 4156 KB
00_sample_03.txt WA
cho_cho_chokudai.txt TLE
chokudai_ga_cho.txt AC 895 ms 12100 KB
test_01.txt WA
test_02.txt WA
test_03.txt WA
test_04.txt WA
test_05.txt WA
test_06.txt AC 61 ms 4164 KB
test_07.txt AC 58 ms 4148 KB
test_08.txt AC 57 ms 4160 KB
test_09.txt AC 76 ms 4288 KB
test_10.txt AC 68 ms 4284 KB
test_11.txt WA
test_12.txt AC 68 ms 4156 KB
test_13.txt AC 58 ms 4152 KB
test_14.txt AC 69 ms 4292 KB
test_15.txt AC 75 ms 4284 KB
test_16.txt WA
test_17.txt WA
test_18.txt WA
test_19.txt AC 61 ms 4160 KB
test_20.txt AC 60 ms 4284 KB
test_21.txt AC 532 ms 12088 KB
test_22.txt AC 706 ms 12092 KB
test_23.txt AC 575 ms 12088 KB
test_24.txt AC 679 ms 12096 KB
test_25.txt AC 611 ms 12092 KB
test_26.txt WA
test_27.txt WA
test_28.txt WA
test_29.txt WA
test_30.txt WA
test_31.txt WA
test_32.txt WA
test_33.txt WA
test_34.txt WA
test_35.txt WA
test_36.txt WA
test_37.txt WA
test_38.txt WA
test_39.txt WA
test_40.txt WA
test_41.txt AC 1096 ms 12148 KB
test_42.txt AC 1097 ms 12092 KB
test_43.txt AC 1096 ms 12084 KB