正解:构造

解题报告:

传送门$QwQ$

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

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

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

$over$

#include<bits/stdc++.h>
using namespace std;
#define il inline
#define gc getchar()
#define mp make_pair
#define P pair<int,int>
#define ri register int
#define rb register bool
#define rc register char
#define t(i) edge[i].to
#define w(i) edge[i].wei
#define rp(i,x,y) for(ri i=x;i<=y;++i)
#define my(i,x,y) for(ri i=x;i>=y;--i)
#define e(i,x) for(ri i=head[x];i;i=edge[i].nxt) const int N=2e5+;
int n,x,a[N],tmp;
bool vis[N]; il int read()
{
rc ch=gc;ri x=;rb y=;
while(ch!='-' && (ch<'' || ch>''))ch=gc;
if(ch=='-')ch=gc,y=;
while(ch>='' && ch<='')x=(x<<)+(x<<)+(ch^''),ch=gc;
return y?x:-x;
} int main()
{
n=read();x=read();if(x== || x==n*-)return printf("No\n"),;printf("Yes\n");
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 ;}
a[n]=x;a[n+]=x+;a[n-]=x-;a[n+]=x-;vis[x]=vis[x+]=vis[x-]=vis[x-]=;
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]);
return ;
}

随机推荐

  1. @codeforces - 1214H@ Tiles Placement

    目录 @description@ @solution@ @part - 1@ @part - 2@ @accepted code@ @details@ @description@ 给定一个 n 点的树 ...

  2. 2019-8-31-dotnet-通过-WMI-获取设备厂商

    title author date CreateTime categories dotnet 通过 WMI 获取设备厂商 lindexi 2019-08-31 16:55:59 +0800 2019- ...

  3. iptables 操作规则

    iptables -nL查看本机关于iptables的设置情况,默认查看的是-t filter,可以指定-t nat iptables-save > iptables.rule会保存当前的防火墙 ...

  4. phpstorm 中git 的使用

    phpstorm 是一款不可多得的IDE 环境,它既是一款强大的编辑器,还是一款调试器,同时还是一款git 可视化管理工具哟,phpers 值得拥有.今天介绍的是他不为人知的强大功能 —— git. ...

  5. python命令之m参数

    在命令行中使用python时,python支持在其后面添加可选参数. python命令的可选参数有很多,例如:使用可选参数h可以查询python的帮助信息: 可选参数m 下面我们来说说python命令 ...

  6. H3C 帧中继显示与调试

  7. Spark1.6.1 MLlib 特征抽取和变换

    Spark1.6.1 MLlib 特征抽取和变换 1 TF-IDF TF-IDF是一种特征向量化方法,这种方法多用于文本挖掘,通过算法可以反应出词在语料库中某个文档中的重要性.文档中词记为t,文档记为 ...

  8. Java1.8 获取文件总行数

    Files.lines(Paths.get("aaa.txt")).count();

  9. Python--day30--tcp协议(建立链接三次握手,断掉链接四次挥手)和UDP协议

    TCP协议: tcp是可靠的,面向连接的.建立全双工通信. 建立链接的三次握手 链接一旦建立一定是全双工工通信,必然是双方通信. UDP协议: TCP协议和UDP协议的对比: QQ使用的是UDP,因为 ...

  10. centos7的gnome假死

    centos7的gnome假死,干掉gnome相关进程,如nautilus,kworker