| 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();
}
