2024-01-13 Anker PowerLine III Flow USB-C / PAST #3 D
Anker PowerLine III Flow USB-C を買った。以前も買ったのだけど長さに失敗して全然使わなかった。改めて 1.8m のものを買った。 PC 用の電源ケーブルの被覆が破れていたのでその買い替え。 PC 用は長めにしておくほうが良いと思った。
ヨドバシで買った。 Amazon の使用を減らしている。
PAST #3 第三回 アルゴリズム実技検定 過去問
- D - 電光掲示板
https://atcoder.jp/contests/past202005-open/tasks/past202005_d
- 提出: https://atcoder.jp/contests/past202005-open/submissions/49259855
- 入力例 1 の値を使って、 1 文字ずつ検出する
use proconio::{input, marker::Chars};
fn main() {
input! {
n: usize,
s: [Chars; 5],
};
let lines = vec![
".###..#..###.###.#.#.###.###.###.###.###.",
".#.#.##....#...#.#.#.#...#.....#.#.#.#.#.",
".#.#..#..###.###.###.###.###...#.###.###.",
".#.#..#..#.....#...#...#.#.#...#.#.#...#.",
".###.###.###.###...#.###.###...#.###.###.",
]
.into_iter()
.map(|line| line.chars().collect::<Vec<char>>())
.collect::<Vec<Vec<char>>>();
let mut ans = vec![];
for i in 0..n {
let mut d = 0;
for j in 0..10 {
let mut ok = true;
for k in 0..5 {
for l in 0..4 {
if s[k][4 * i + l] != lines[k][4 * j + l] {
ok = false;
}
}
}
if ok {
d = j;
break;
}
}
ans.push(d);
}
let ans = ans.into_iter().map(|d| d.to_string()).collect::<String>();
println!("{}", ans);
}
今日のコミット。