Task: | Kolmijako |
Sender: | pupukani |
Submission time: | 2025-09-05 19:29:01 +0300 |
Language: | C++ (C++17) |
Status: | READY |
Result: | 0 |
group | verdict | score |
---|---|---|
#1 | TIME LIMIT EXCEEDED | 0 |
#2 | TIME LIMIT EXCEEDED | 0 |
#3 | TIME LIMIT EXCEEDED | 0 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | TIME LIMIT EXCEEDED | -- | 1, 2, 3 | details |
#2 | TIME LIMIT EXCEEDED | -- | 2, 3 | details |
#3 | TIME LIMIT EXCEEDED | -- | 3 | details |
Code
#include <iostream> #include <vector> #include <numeric> #include <sstream> int summa(std::vector<int> v) { int summa = 0; for (int i : v) summa += i; return summa; } std::stringstream ss; bool solve(std::vector<int> num, size_t i, int k, std::vector<std::vector<int>> kasat) { if (i == num.size()) // num is "empty" { if (summa(kasat[0]) == summa(kasat[1]) && summa(kasat[1]) == summa(kasat[2])) { ss << "YES" << std::endl; for (int j = 0; j < 3; ++j) { ss << kasat[j].size() << std::endl; for (int luku : kasat[j]) ss << luku << " "; ss << std::endl; } return true; } return false; } kasat[k].push_back(num[i]); bool tulos = solve(num, i + 1, 0, kasat) || solve(num, i + 1, 1, kasat) || solve(num, i + 1, 2, kasat); if (tulos == true) return true; return false; } int main(void) { int t; std::cin >> t; for (int i = 0; i < t; ++i) { int n; std::cin >> n; std::vector<int> num(n); std::iota(num.begin(), num.end(),1); std::vector<std::vector<int>> kasat(3); if (!solve(num, 0, 0, kasat) && !solve(num, 0, 1, kasat) && !solve(num, 0, 2, kasat)) ss << "NO" << std::endl; } std::cout << ss.str(); }
Test details
Test 1
Group: 1, 2, 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
15 1 2 3 4 ... |
correct output |
---|
NO NO NO NO YES ... |
user output |
---|
(empty) |
Test 2
Group: 2, 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
100 1 2 3 4 ... |
correct output |
---|
NO NO NO NO YES ... |
user output |
---|
(empty) |
Test 3
Group: 3
Verdict: TIME LIMIT EXCEEDED
input |
---|
100 564 895 546 980 ... |
correct output |
---|
YES 188 1 6 12 7 18 13 24 19 30 25 36 ... |
user output |
---|
(empty) |