优先按照它说明的方法处理数组

然后为了让数列中尽可能多的出现小的数字

所以1是必须要出现的,这样才能使整个数列的排序后字典序最小。

我们思考,如果2也能在这个数列中那就最好不过了

但是2有可能不在这个数列里,就是2在走了1就不可能走的地方的话,就不能走2了。

所以从小到大枚举数字,如果当前数字能走,就输出,然后标记所有走了这个节点就不能走的节点。

#include<algorithm>
#include<iostream>
#include<cstdlib>
#include<cstring>
#include<cstdio>
#include<cmath>
using namespace std; typedef long long LL; #define N 5010 LL seed,a,b,c,d; int n,m,ask;
int x,y; int arr[N*N],g[N][N];
int ans[N<<2]; bool v[N][N]; int work()
{
return seed=(a*seed*seed%d+b*seed%d+c)%d;
} int main()
{
scanf("%lld%lld%lld%lld%lld%d%d%d",&seed,&a,&b,&c,&d,&m,&n,&ask);
for (int i=1;i<=n*m;i++)
arr[i]=i,swap(arr[i],arr[work()%i+1]);
for (int i=1;i<=ask;i++)
{
scanf("%d%d",&x,&y);
swap(arr[x],arr[y]);
}
for (int i=1;i<=m;i++)
for (int j=1;j<=n;j++)
g[i][j]=arr[(i-1)*n+j];
for (int i=1;i<=m;i++)
for (int j=1;j<=n;j++)
arr[g[i][j]]=(i-1)*n+j;
for (int i=1;i<=n*m;i++)
{
x=arr[i]/n+1-(arr[i]%n==0);
y=arr[i]-(x-1)*n;
if (!v[x][y])
{
if (i!=1)
putchar(' ');
printf("%d",i);
for (int j=x+1;j<=m;j++)
for (int k=y-1;k;k--)
{
if (v[j][k])
break;
v[j][k]=true;
}
for (int j=x-1;j;j--)
for (int k=y+1;k<=n;k++)
{
if (v[j][k])
break;
v[j][k]=true;
}
}
}
return 0;
}

  

最新文章

  1. C# 设计模式之工厂模式(一)
  2. combobox获取值
  3. 对于C++窗口编译一闪而过的解决方法 (DEV CPP下)
  4. 错误3 error C3859: 超过了 PCH 的虚拟内存范围;请使用“-Zm120”
  5. android实现系统电话通话过程中自动感应黑屏
  6. exceptions-in-java
  7. POJ 2070
  8. Angular js总结
  9. Navicat Premium 自动备份mysql和sqlserver
  10. LPC1768IAP(详解,有上位机)
  11. 我的第一个jQuery插件--表格隔行变色
  12. The Go Programming Language. Notes.
  13. Ajax简单总结
  14. 第二篇:操纵MySQL数据库(2) - 基于ORM思想的SQLAlchemy库
  15. 服务器配置java
  16. BZOJ5254 : [Fjwc2018]红绿灯
  17. Layer For Mobile 弹窗 input输入文字后,点击取消确定按钮失效(需点击两次)
  18. C++中cin.clear()的用法
  19. Linux 命令之mv
  20. eventql部署过程

热门文章

  1. hdu2046
  2. BZOJ 4811 [Ynoi2017]由乃的OJ ——Link-Cut Tree
  3. VS链接错误: LNIK1123
  4. VB6 post图片
  5. linux和windows下分别如何查看电脑是32位的还是64位?
  6. CentOS7关于网络的设置
  7. wamp Apache和mysql服务无法启动的终极解决方法!!!!!!
  8. Error处理: “非法字符: \65279”的解决办法
  9. Codeforces Round #275 (Div. 2) B. Friends and Presents 二分+数学
  10. android 禁止ViewPager滑动