Pagini recente » Cod sursa (job #2350974) | Cod sursa (job #159462) | Cod sursa (job #2479499) | Cod sursa (job #1147904) | Cod sursa (job #760097)
Cod sursa(job #760097)
#include <fstream>
int main(void)
{
unsigned int N;
std::ifstream in("dame.in");
in >> N;
in.close();
unsigned int *arr = new unsigned int [N];
unsigned int index = 0;
if(N % 12 == 3 || N % 12 == 9)
{
for(unsigned int i = 4; i <= N; i += 2, ++index)
arr[index] = i;
arr[index++] = 2;
for(unsigned int i = 5; i <= N; i+= 2, ++index)
arr[index] = i;
arr[index++] = 1;
arr[index] = 3;
}
else
{
for(unsigned int i = 2; i <= N; i += 2, ++index)
arr[index] = i;
if(N % 12 == 8)
for(unsigned int i = 1; i <= N; i += 4)
{
arr[index + 1] = i;
arr[index] = i + 2;
index += 2;
}
if(N % 12 == 2)
{
arr[index + 1] = 1;
arr[index] = 3;
for(unsigned int i = 7; i <= N; ++i, ++index)
arr[index] = i;
arr[index] = 5;
}
}
std::ofstream out("dame.out");
out << N << '\n';
for(unsigned int index = 0; index < N; ++index)
out << index + 1 << ' ' << arr[index] << '\n';
out.close();
return 0;
}