提出 #47235310
ソースコード 拡げる
#include <bits/stdc++.h>
#include <atcoder/modint>
namespace {
using ModInt [[maybe_unused]] = atcoder::modint998244353;
using Num [[maybe_unused]] = long long int;
using Vec [[maybe_unused]] = std::vector<Num>;
using Set [[maybe_unused]] = std::set<Num>;
using Mset [[maybe_unused]] = std::multiset<Num>;
using Edges [[maybe_unused]] = std::vector<std::vector<Num>>;
template<typename T>
using Q [[maybe_unused]] = std::queue<T>;
template<typename T>
using PQ [[maybe_unused]] = std::priority_queue<T, std::vector<T>, std::greater<T>>;
}
Num grid[10][10];
void solve(std::istream& is, std::ostream& os) {
for(Num y{0}; y<9; ++y) {
for(Num x{0}; x<9; ++x) {
Num a {0};
is >> a;
--a;
grid[y][x] = a;
}
}
bool valid {true};
for(Num y{0}; y<9; ++y) {
std::vector<Num> counts(9,0);
for(Num x{0}; x<9; ++x) {
const auto a = grid[y][x];
counts.at(a) += 1;
}
valid &= std::all_of(counts.begin(), counts.end(), [](const auto& n) { return n == 1; });
}
for(Num x{0}; x<9; ++x) {
std::vector<Num> counts(9,0);
for(Num y{0}; y<9; ++y) {
const auto a = grid[y][x];
counts.at(a) += 1;
}
valid &= std::all_of(counts.begin(), counts.end(), [](const auto& n) { return n == 1; });
}
for(Num box_x{0}; box_x<9; box_x+=3) {
for(Num box_y{0}; box_y<9; box_y+=3) {
std::vector<Num> counts(9,0);
for(Num ofs_x{0}; ofs_x<3; ++ofs_x) {
for(Num ofs_y{0}; ofs_y<3; ++ofs_y) {
const auto x = box_x + ofs_x;
const auto y = box_y + ofs_y;
const auto a = grid[y][x];
counts.at(a) += 1;
}
}
valid &= std::all_of(counts.begin(), counts.end(), [](const auto& n) { return n == 1; });
}
}
if (valid) {
os << "Yes\n";
} else {
os << "No\n";
}
}
int main(void) {
solve(std::cin, std::cout);
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | C - Number Place |
| ユーザ | zettsut |
| 言語 | C++ 20 (gcc 12.2) |
| 得点 | 250 |
| コード長 | 2179 Byte |
| 結果 | AC |
| 実行時間 | 1 ms |
| メモリ | 3676 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 250 / 250 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | example_00.txt, example_01.txt, example_02.txt |
| All | example_00.txt, example_01.txt, example_02.txt, hand_00.txt, hand_01.txt, hand_02.txt, random_00.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_16.txt, random_17.txt, random_18.txt, random_19.txt, random_20.txt, random_21.txt, random_22.txt, random_23.txt, random_24.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| example_00.txt | AC | 1 ms | 3484 KiB |
| example_01.txt | AC | 1 ms | 3484 KiB |
| example_02.txt | AC | 1 ms | 3608 KiB |
| hand_00.txt | AC | 1 ms | 3676 KiB |
| hand_01.txt | AC | 1 ms | 3604 KiB |
| hand_02.txt | AC | 1 ms | 3404 KiB |
| random_00.txt | AC | 1 ms | 3472 KiB |
| random_01.txt | AC | 1 ms | 3608 KiB |
| random_02.txt | AC | 1 ms | 3472 KiB |
| random_03.txt | AC | 1 ms | 3488 KiB |
| random_04.txt | AC | 1 ms | 3604 KiB |
| random_05.txt | AC | 1 ms | 3532 KiB |
| random_06.txt | AC | 1 ms | 3468 KiB |
| random_07.txt | AC | 1 ms | 3464 KiB |
| random_08.txt | AC | 1 ms | 3536 KiB |
| random_09.txt | AC | 1 ms | 3536 KiB |
| random_10.txt | AC | 1 ms | 3524 KiB |
| random_11.txt | AC | 1 ms | 3600 KiB |
| random_12.txt | AC | 1 ms | 3532 KiB |
| random_13.txt | AC | 1 ms | 3488 KiB |
| random_14.txt | AC | 1 ms | 3472 KiB |
| random_15.txt | AC | 1 ms | 3520 KiB |
| random_16.txt | AC | 1 ms | 3488 KiB |
| random_17.txt | AC | 1 ms | 3400 KiB |
| random_18.txt | AC | 1 ms | 3604 KiB |
| random_19.txt | AC | 1 ms | 3532 KiB |
| random_20.txt | AC | 1 ms | 3600 KiB |
| random_21.txt | AC | 1 ms | 3464 KiB |
| random_22.txt | AC | 1 ms | 3672 KiB |
| random_23.txt | AC | 1 ms | 3412 KiB |
| random_24.txt | AC | 1 ms | 3600 KiB |