Pagini recente » Cod sursa (job #2429509) | Cod sursa (job #870704) | Cod sursa (job #227623) | Cod sursa (job #1108763) | Cod sursa (job #3259994)
#include <fstream>
using namespace std;
ifstream in;
ofstream out;
struct elem {
int val; elem *nxt, *prv;
};
elem *ef, *el, *aux;
int main()
{
in.open("order.in");
out.open("order.out");
int n;
in >> n;
ef = new elem;
ef->val = 0;
el = ef;
for (int i = 1; i < n; i++)
{
aux = new elem;
aux->val = i;
aux->prv = el;
el->nxt = aux;
el = aux;
}
el->nxt = ef;
ef->prv = el;
elem *cur = ef;
for (int i = 0; i < n; i++)
{
int numpasi = i;
numpasi %= (n-i);
numpasi++;
while (numpasi)
{
cur = cur -> nxt;
numpasi--;
}
cur->prv->nxt = cur->nxt;
cur->nxt->prv = cur->prv;
out << cur->val + 1 << " ";
}
}