<?php

$input = explode(',', file_get_contents('input.txt'));

function run_opcode(array $input)
{
    $i = 0;
    while ($input[$i] !== 99) {
        [$operation, $first, $second, $position] = array_slice($input, $i, 4);
        switch ($operation) {
            case 1:
                $input[$position] = $input[$first] + $input[$second];
                break;
            case 2:
                $input[$position] = $input[$first] * $input[$second];
                break;
            case 99:
                return $input[0];
            default:
                echo 'unknown operation : '.$operation;
                exit;
        }
        $i += 4;
    }

    return $input[0];
}

$noun = 0;
$verb = 0;
while ($verb !== 99) {
    $noun = 0;
    while ($noun !== 99) {
        $clone_input = $input;
        $clone_input[1] = $noun;
        $clone_input[2] = $verb;
        $magic_number = run_opcode($clone_input);
        if ($magic_number === 19690720) {
            echo sprintf('noun : %s | verb : %s', $noun, $verb);
        }
        $noun++;
    }
    $verb++;
}

echo sprintf("\n".'answer : %u', ((100*$noun)+$verb));