/
DeC2018
/
0036
Обзор
Документация
Войти
/
DeC2018
/
0036
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
main.cpp
61 строка
2 KB
Den
create main.cpp
16 янв 2025, 22:35
16 янв 2025, 22:35
4fbec86
Код
Авторство
О чём код?
#include <iostream> #include <vector> #include <unordered_set> #include <string> using namespace std; class Solution { public: bool isValidSudoku(vector<vector<char>>& board) { unordered_set<string> seen; for (int i = 0; i < 9; ++i) { for (int j = 0; j < 9; ++j) { if (board[i][j] == '.') continue; const string c(1, board[i][j]); if (!seen.insert(c + "@row" + to_string(i)).second || !seen.insert(c + "@col" + to_string(j)).second || !seen.insert(c + "@box" + to_string(i / 3) + to_string(j / 3)).second) return false; } } return true; } }; int main() { Solution solution; vector<vector<char>> board1 = { {'5', '3', '.', '.', '7', '.', '.', '.', '.'}, {'6', '.', '.', '1', '9', '5', '.', '.', '.'}, {'.', '9', '8', '.', '.', '.', '.', '6', '.'}, {'8', '.', '.', '.', '6', '.', '.', '.', '3'}, {'4', '.', '.', '8', '.', '3', '.', '.', '1'}, {'7', '.', '.', '.', '2', '.', '.', '.', '6'}, {'.', '6', '.', '.', '.', '.', '2', '8', '.'}, {'.', '.', '.', '4', '1', '9', '.', '.', '5'}, {'.', '.', '.', '.', '8', '.', '.', '7', '9'} }; cout << "Input: board1" << endl; cout << "Output: " << (solution.isValidSudoku(board1) ? "true" : "false") << endl; vector<vector<char>> board2 = { {'8', '3', '.', '.', '7', '.', '.', '.', '.'}, {'6', '.', '.', '1', '9', '5', '.', '.', '.'}, {'.', '9', '8', '.', '.', '.', '.', '6', '.'}, {'8', '.', '.', '.', '6', '.', '.', '.', '3'}, {'4', '.', '.', '8', '.', '3', '.', '.', '1'}, {'7', '.', '.', '.', '2', '.', '.', '.', '6'}, {'.', '6', '.', '.', '.', '.', '2', '8', '.'}, {'.', '.', '.', '4', '1', '9', '.', '.', '5'}, {'.', '.', '.', '.', '8', '.', '.', '7', '9'} }; cout << "Input: board2" << endl; cout << "Output: " << (solution.isValidSudoku(board2) ? "true" : "false") << endl; return 0; }