Submission #34561653


Source Code Expand

<?php

fscanf(STDIN, "%s", $input);

$intInputArray = str_split($input);

if ($intInputArray[0] === '1') {
    echo "No\n";
    return;
}

$column[0] = [7];
$column[1] = [4];
$column[2] = [2, 8];
$column[3] = [5];
$column[4] = [3, 9];
$column[5] = [6];
$column[6] = [10];

$isSplit = false;
foreach ($column as $index => $pins) {
    foreach ($pins as $pin) {
        if ($intInputArray[$pin - 1] === '0') {
            continue;
        }

        if (!allClear($intInputArray, $column, $index + 1)) {
            // 右隣のピンに残りあり
            continue;
        }
        if (moreThan($intInputArray, $column, $index + 2)) {
            $isSplit = true;
        }
    }
}

if ($isSplit) {
    echo "Yes\n";
} else {
    echo "No\n";
}

function allClear(array $intInputArray, array $column, int $index): bool
{
    if (empty($column[$index])) {
        return true;
    }
    $pins = $column[$index];
    foreach ($pins as $pin) {
        if ($intInputArray[$pin - 1] === '1') {
            return false;
        }
    }
    return true;
}

function moreThan(array $intInputArray, array $column, int $startIndex): bool
{
    foreach ($column as $index => $pins) {
        if ($index < $startIndex) {
            continue;
        }
        foreach ($pins as $pin) {
            if ($intInputArray[$pin - 1] === '1') {
                return true;
            }
        }
    }
    return false;
}

Submission Info

Submission Time
Task B - Split?
User ee07030
Language PHP (7.4.4)
Score 200
Code Size 1484 Byte
Status AC
Exec Time 20 ms
Memory 16240 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 200 / 200
Status
AC × 4
AC × 27
Set Name Test Cases
Sample example_00.txt, example_01.txt, example_02.txt, example_03.txt
All example_00.txt, example_01.txt, example_02.txt, example_03.txt, handmade_00.txt, handmade_01.txt, test_00.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
Case Name Status Exec Time Memory
example_00.txt AC 17 ms 15936 KiB
example_01.txt AC 18 ms 15956 KiB
example_02.txt AC 17 ms 16008 KiB
example_03.txt AC 17 ms 15928 KiB
handmade_00.txt AC 17 ms 15972 KiB
handmade_01.txt AC 17 ms 16100 KiB
test_00.txt AC 17 ms 16024 KiB
test_01.txt AC 16 ms 15920 KiB
test_02.txt AC 17 ms 15832 KiB
test_03.txt AC 18 ms 16240 KiB
test_04.txt AC 17 ms 16020 KiB
test_05.txt AC 17 ms 15960 KiB
test_06.txt AC 15 ms 15888 KiB
test_07.txt AC 18 ms 16112 KiB
test_08.txt AC 16 ms 15940 KiB
test_09.txt AC 18 ms 16036 KiB
test_10.txt AC 18 ms 16228 KiB
test_11.txt AC 17 ms 15896 KiB
test_12.txt AC 17 ms 16080 KiB
test_13.txt AC 17 ms 15932 KiB
test_14.txt AC 20 ms 16012 KiB
test_15.txt AC 17 ms 16060 KiB
test_16.txt AC 18 ms 15832 KiB
test_17.txt AC 17 ms 16028 KiB
test_18.txt AC 16 ms 16012 KiB
test_19.txt AC 16 ms 16164 KiB
test_20.txt AC 19 ms 16056 KiB