记录编号 |
267803 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[HZOI 2016]白雪皑皑 |
最终得分 |
100 |
用户昵称 |
于 |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
2.483 s |
提交时间 |
2016-06-11 17:36:43 |
内存使用 |
10.20 MiB |
显示代码纯文本
#include<iostream>
#include<stdio.h>
#include<cstring>
#include<algorithm>
using namespace std;
int n,m,p,q;
struct node
{
int pos,l,r;
}a[1000010];
int main()
{
freopen("winter.in","r",stdin);
freopen("winter.out","w",stdout);
scanf("%d%d%d%d",&n,&m,&p,&q);
for(int i=m;i>=1;i--)
{
//puts("***");
int s=(i*p+q)%n+1,t=(i*q+p)%n+1;
int z=min(s,t);t=max(s,t),s=z;
int l=s,r=t;
while(l<=r)
{
if(a[l].pos==0)
{
a[l].pos=i;
a[l].l=l;
a[l].r=r;
}
else
l=a[l].r;
l++;
}
}
for(int i=1;i<=n;i++)
{
printf("%d\n",a[i].pos);
}
return 0;
}