Cod sursa(job #1151377)
Utilizator | Data | 24 martie 2014 08:52:28 | |
---|---|---|---|
Problema | Order | Scor | 25 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 1.19 kb |
#include <cstdio>
using namespace std;
int a[30001];
bool ok[30001];
int main()
{
int n, m=0, i=1, j;
freopen("order.in","r",stdin);
freopen("order.out","w",stdout);
scanf("%d",&n);
for (j=1; j<=n; j++) ok[j]=true;
while (m<=n)
{
int nr=0; j=i;
bool t=false;
while (!t)
{
if (nr<m+1)
{
j++; j%=n;
if (j==0) j=n;
if (ok[j]==true)
{
nr++;
if (nr==m+1)
{
a[++m]=j;
ok[j]=false;
i=j; break;
}
}
}
}
if (m==n) break;
}
for (i=1; i<=m; i++) printf("%d ",a[i]);
fclose(stdin);
fclose(stdout);
return 0;
}