結果
| 問題 | 
                            No.345 最小チワワ問題
                             | 
                    
| コンテスト | |
| ユーザー | 
                             | 
                    
| 提出日時 | 2020-12-31 10:41:14 | 
| 言語 | PHP  (843.2)  | 
                    
| 結果 | 
                             
                                WA
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 1,092 bytes | 
| コンパイル時間 | 4,431 ms | 
| コンパイル使用メモリ | 32,016 KB | 
| 実行使用メモリ | 32,656 KB | 
| 最終ジャッジ日時 | 2024-10-09 09:32:27 | 
| 合計ジャッジ時間 | 6,039 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge4 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 2 WA * 1 | 
| other | AC * 12 WA * 17 | 
コンパイルメッセージ
No syntax errors detected in Main.php
ソースコード
<?php
/**
 * @see https://yukicoder.me/problems/no/345
 */
$S = str_split(trim(fgets(STDIN)));
$chiwawaColumns = [];
for ($i = 0; $i < count($S); $i++) {
    $char = $S[$i];
    switch ($char) {
        case 'c':
            $chiwawaColumns[]['c'] = $i;
            break;
        case 'w':
            array_walk($chiwawaColumns, function (&$item, $j, $i) {
                if (array_key_exists('w2', $item)) {
                    return; // チワワ列が完成している場合は何もしない(最小チワワとするため)
                }
                if (array_key_exists('w1', $item)) {
                    $item['w2'] = $i;
                } else {
                    $item['w1'] = $i;
                }
            }, $i);
            break;
    }
}
if (empty($chiwawaColumns)) {
    $ret = -1;
} else {
    $chiwawaColumnLengthList = array_map(function ($column) {
        if (array_key_exists('w2', $column)) {
            return $column['w2'] - $column['c'] + 1;
        }
    }, $chiwawaColumns);
    $ret = min($chiwawaColumnLengthList);
}
echo $ret . "\n";