正解:构造

解题报告:

传送门$QwQ$

考虑如果有两个相邻格子是相同数字那么它们以上这两列就都会是这列数字(显然$QwQ$?

所以考虑只要构造出第$n-1$行的中心和中心右侧($or$左侧一样的$QwQ$都等于$x$,其他格子随便填就成鸭$QwQ$

然后就做完辣?记得分类讨论几个特殊情况嗷$QwQ$

$over$

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. #define il inline
  4. #define gc getchar()
  5. #define mp make_pair
  6. #define P pair<int,int>
  7. #define ri register int
  8. #define rb register bool
  9. #define rc register char
  10. #define t(i) edge[i].to
  11. #define w(i) edge[i].wei
  12. #define rp(i,x,y) for(ri i=x;i<=y;++i)
  13. #define my(i,x,y) for(ri i=x;i>=y;--i)
  14. #define e(i,x) for(ri i=head[x];i;i=edge[i].nxt)
  15.  
  16. const int N=2e5+;
  17. int n,x,a[N],tmp;
  18. bool vis[N];
  19.  
  20. il int read()
  21. {
  22. rc ch=gc;ri x=;rb y=;
  23. while(ch!='-' && (ch<'' || ch>''))ch=gc;
  24. if(ch=='-')ch=gc,y=;
  25. while(ch>='' && ch<='')x=(x<<)+(x<<)+(ch^''),ch=gc;
  26. return y?x:-x;
  27. }
  28.  
  29. int main()
  30. {
  31. n=read();x=read();if(x== || x==n*-)return printf("No\n"),;printf("Yes\n");
  32. if(x==){a[n]=;a[n+]=;tmp=;n=n*-;rp(i,,n)if(!a[i])a[i]=++tmp;rp(i,,n)printf("%d\n",a[i]);return ;}
  33. a[n]=x;a[n+]=x+;a[n-]=x-;a[n+]=x-;vis[x]=vis[x+]=vis[x-]=vis[x-]=;
  34. tmp=;n=n*-;rp(i,,n)if(!a[i]){while(vis[tmp])++tmp;a[i]=tmp;vis[tmp]=;}rp(i,,n)printf("%d\n",a[i]);
  35. return ;
  36. }

随机推荐

  1. 阿里云BaaS:降低区块链应用门槛,用技术构建商业互信

    5月8日,阿里云召开区块链服务(BaaS)商业化发布会,会上对BaaS产品.业务应用场景及生态策略进行了全面解读. 对于广大IT服务商和开发者而言,构建区块链应用存在三大痛点问题:成本高,研发投入大. ...

  2. CENTOS7安装R语言环境

    CENTOS7安装R语言环境 yum install texinfo.x86_64 yum install texlive.x86_64 cd /opt wget https://mirrors.tu ...

  3. H3C OSI参考模型层次结构

  4. get和post的区别?

    GET:一般用于信息获取,使用URL传递参数,对所发送信息的数量也有限制,一般在2000个字符 POST:一般用于 修改服务器上的资源,对所发送的信息没有限制. GET方式需要使用Request.Qu ...

  5. Java反射机制(四):动态代理

    一.静态代理 在开始去学习反射实现的动态代理前,我们先需要了解代理设计模式,那何为代理呢? 代理模式: 为其他对象提供一种代理,以控制对这个对象的访问. 先看一张代理模式的结构图: 简单的理解代理设计 ...

  6. ASP.NET一般登陆逻辑分享(01)

  7. 使用原生JS封装一个动画函数

    最近一直在忙项目,很少有时间回顾之前的知识,今天刚好要做一个轮播,因为对兼容性有一定的要求,使用了各种插件和库中的轮播,效果都不是很理想,一怒之下,使用原生JS封装了一个轮播组件,其中重要的功能就是一 ...

  8. 地址中如果含有"+",发给服务器时"+"变成了空格问题解析

    如地址为sms:+7 915 444-414-444,含有空格. 服务器解码 URLDecoder.decode("sms:+7 915 444-414-444"),返回的是sms ...

  9. Callable Objects

    We learned in 7.11 that there are "array-like" objects that are not true arrays but can be ...

  10. P1023 活动安排

    题目描述 某个人可以在n个活动中选择一些出来参加.每个活动都有起止时间.而且每个时间段只能参加一个活动.问,这个人最多能加参加几个活动. 可以在活动结束时,立即开始新的活动. 输入格式 第一行是一个整 ...