Pagini recente » Cod sursa (job #3151580) | Cod sursa (job #3280867) | Cod sursa (job #412099) | Cod sursa (job #2811686) | Cod sursa (job #1540512)
#include<iostream>
#include<fstream>
using namespace std;
ifstream fin ("multimi2.in");
ofstream fout ("multimi2.out");
int n;
void First_case()
{
int i;
fout << "0\n"; /// diferenta minima intre multimile formate e 0
fout << n/2 <<"\n"; /// numarul de elemente
for (i=1; i<n/2; i=i+2)
fout << i << " ";
for (i=n; i>n/2; i=i-2)
fout << i << " ";
fout <<"\n" << n/2 << "\n"; /// numarul de elemente
for (i=2; i<=n/2; i=i+2)
fout << i << " ";
for (i=n-1; i>=n/2; i=i-2)
fout << i << " ";
}
void Second_case()
{
int i;
fout << "1\n";
fout << (n/2+1) << "\n";
fout << "1 " << n-1 << " ";
for (i=2; i<n/2; i=i+2)
fout << i << " " << n-i << " ";
fout << (n/2) << "\n";
fout << n/2 << "\n";
fout << n << " " << (n/2+1) << " ";
for (i=3; i<n/2; i=i+2)
fout << i << " " << n-i << " ";
fout << "\n";
}
void Third_case()
{
int i;
fout << "1\n";
fout << n/2 << "\n";
for (i=1; i<n/2; i=i+2)
fout << i << " " << n-i << " ";
fout << (n/2) << "\n";
fout << n/2 << "\n"; /// numarul de elemente din b
fout << (n/2+1) << " ";
for (i=2; i<n/2; i=i+2)
fout << i << " " << n-i << " ";
}
void Fourth_case()
{
int i;
if (n == 3) fout << "0\n";
else fout << "1\n";
fout << (n/2+1) << "\n";
fout << "1 " << n-1 << " ";
for (i=2; i<=n/2; i=i+2)
fout << i << " " << n-i << " ";
fout << "\n" << n/2 << "\n";
fout << n << " ";
for (i=3; i<=n/2; i=i+2)
fout << i << " " << n-i << " ";
fout << "\n";
}
void Rezolva()
{
fin >> n;
if (n%4 == 0) First_case();
else if (n%4 == 1) Second_case();
else if (n%4 == 2) Third_case();
else Fourth_case();
}
int main ()
{
Rezolva();
fin.close();
fout.close();
return 0;
}