Pagini recente » Cod sursa (job #2564265) | Cod sursa (job #2860645) | Cod sursa (job #633668) | Cod sursa (job #646001) | Cod sursa (job #106676)
Cod sursa(job #106676)
#include <cstdio>
#include <vector>
using namespace std;
#define pb push_back
#define sz(c) int((c).size())
int N;
vector<int> A, B;
void Scrie(vector<int> &A) {
printf("%d\n", sz(A));
for (int i = 0; i < sz(A); ++i)
printf("%d ", A[i]);
printf("\n");
}
void Solve(int start, int N) {
for (int i = start, cnt = 0; i <= N; ++i, cnt = (cnt+1) % 4)
if (cnt == 0 || cnt == 3) A.pb(i);
else B.pb(i);
Scrie(A); Scrie(B);
}
int main() {
freopen("multimi2.in", "r", stdin);
freopen("multimi2.out", "w", stdout);
scanf("%d", &N);
switch (N % 4) {
case 0: printf("0\n"); Solve(1, N); break;
case 1: printf("1\n"); A.pb(1); Solve(2, N); break;
case 2: printf("1\n"); A.pb(1); B.pb(2); Solve(3, N); break;
case 3: printf("0\n"); A.pb(1); A.pb(2); B.pb(3); Solve(4, N); break;
}
}