Witam !
Niestety, wiem że tak nie wypada, ale jestem zmuszony wrzucić tutaj cały kod, gdyż moim zdanie działa on dobrze, a sędzia go nie akceptuje i nie wiem gdzie jest błąd.
#include <iostream>
using namespace std;
long int n;
int main()
{
//cout << "Podaj liczbe: " << endl;
//for(int n=999999; n<=1000000; n++)
//{
cin>>n;
if(n>=0 && n<=1000000)
if(n==2 || n==3 || n==1)
{
cout<<"NIE"<<endl;
}
else
{
long int *tablica;
tablica=new long int [n+1];
for(long int i=n; i>=0; i--)
{
tablica[i]=i;
}
long int polowa=0;
polowa=(n/2);
long int bufor=0;
for(long int y=0; y<polowa; y+=2)
{
bufor=tablica[y];
tablica[y]=tablica[n-1-y];
tablica[n-1-y]=bufor;
}
bufor=0;
bufor = tablica[n];
tablica[n] = tablica[polowa];
tablica[polowa] = bufor;
for(long int i=n; i>=0; i--)
{
cout<<tablica[i]<<" ";
}
//PETLA SPRAWDZAJACA CZY KOLEJNY INDEX W TABLICY NIE JEST O 1 WIEKSZY
/*
long int OK=0;
for(long int z=0; z<n; z++)
{
if(tablica[z]+1 == tablica[z+1] || tablica[z]-1 == tablica[z+1])
{
OK=1;
}
}
if(OK==1)
cout<<"OK"<<endl;
}
*/
//}
}
return 0;
}
http://pl.spoj.com/problems/NIEKOLEJ/