Pagini recente » Cod sursa (job #2537903) | Cod sursa (job #2366272) | Cod sursa (job #598605) | Cod sursa (job #1421113) | Cod sursa (job #590308)
Cod sursa(job #590308)
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
#define PB push_back
#define LL long long
vector <int> sol;
int main()
{
freopen ("multimi2.in", "r", stdin);
freopen ("multimi2.out", "w", stdout);
int N;
scanf ("%d", &N);
LL S = N * (N + 1) / 2;
int S1 = S / 2;
int S2 = S - S1;
int NN = N;
printf ("%d\n", abs (S1 - S2) );
for ( ; S1 >= N ; S1 -= N, -- N) sol . PB (N);
if (S1) sol.PB (S1);
printf ("%d\n", sol.size());
for (unsigned int i = 0; i < sol.size(); ++ i) printf ("%d ", sol[i]);
printf ("\n%d\n", NN - sol.size());
for (int t = 1; t < sol[0]; ++ t) printf ("%d ", t);
for (unsigned int i = 1; i < sol.size(); ++ i)
for (int t = sol[i - 1] + 1; t < sol[i]; ++ t) printf ("%d ", t);
for (int t = sol[sol.size() - 1]; t <= N; ++ t) printf ("%d ", t);
return 0;
}