Task: | Lista |
Sender: | Grez |
Submission time: | 2020-09-06 12:16:53 +0300 |
Language: | C++ (C++17) |
Status: | COMPILE ERROR |
Compiler report
input/code.cpp:8:6: error: expected unqualified-id before '[' token bool[] sieve = null; ^ input/code.cpp:9:5: error: expected unqualified-id before '[' token int[] ans = null; ^ input/code.cpp:11:9: error: expected ':' before 'Solver' public Solver(int amount) { ^~~~~~ input/code.cpp:36:9: error: expected ':' before 'void' public void Solve() ^~~~ input/code.cpp:58:2: error: expected ';' after class definition } ^ ; input/code.cpp: In constructor 'Solver::Solver(int)': input/code.cpp:13:3: error: 'sieve' was not declared in this scope sieve = new bool[amo]; ^~~~~ input/code.cpp:14:3: error: 'ans' was not declared in this scope ans = new int[amo]; ^~~ input/code.cpp:14:3: note: suggested alternative: 'abs' ans = new int[amo]; ^~~ abs input/code.cpp: In member function 'void Solver::swap(int, int)': input/code.cpp:19:11: error: 'ans' was not declared in this scope int t = ans[a]; ^~~ input/code.cpp:19:...
Code
#include <iostream>using namespace std;class Solver{bool[] sieve = null;int[] ans = null;int amo = 0;public Solver(int amount) {amo = amount;sieve = new bool[amo];ans = new int[amo];}void swap(int a, int b){if (a == b) return;int t = ans[a];ans[a] = ans[b];ans[b] = t;}bool recurse(int pos){for (int other = pos; other >= 0; other -= 2){if (sieve[(ans[other] + ans[pos + 1]) / 2]) continue;if (pos == 0) return true;swap(pos, other);if (recurse(pos - 1)) return true;swap(pos, other); //swap back}return false;}public void Solve(){int maxPrime = amo * 2;for (int mul = 3; (mul * mul) < maxPrime; mul += 2){for (int hole = mul / 2 + mul; hole < amo; hole += mul){sieve[hole] = true;}}for (int i = 0; i < amo; i++) { ans[i] = i + 1; }if (recurse(amo - 2)){for (int i=0; i<amo; i++) {cout << ans[i];}count << endl;}}}int main() {int amo;cin >> amo;new Solver(amo).Solve();}