1400*C. Team(模拟&构造)

Problem - 401C - Codeforces

解析:

因为0不能相邻,所以0之间最少 n-1 个位置,最多 n+1 个位置,如果 m<n-1显然不符题意。

并且1最多连续两个,所以 m>2*n+2 同样不符题意。

其余情况构造即可

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int n,m;
signed main(){
	scanf("%d%d",&n,&m);
	if(m<n-1||m>2*n+2) puts("-1");
	else{
		if(m==n){
			for(int i=1;i<=n;i++) printf("01");
		}
		else if(m==n-1){
			for(int i=1;i<=n-1;i++) printf("01");
			printf("0");
		}
		else{
			int a=m-n-1,b=n+1-a;
			for(int i=1;i<=n;i++){
				if(a>0) printf("11"),a--;
				else printf("1"),b--;
				printf("0");
			}
			if(a>0) printf("11"),a--;
			else printf("1"),b--;
		}
	}
	return 0;
}
相关推荐
Billlly14 分钟前
莫比乌斯反演学习笔记
算法
fqbqrr32 分钟前
2606C++,方便的调试类
c++
ZC跨境爬虫35 分钟前
跟着 MDN 学 JavaScript day_2:JavaScript 初体验
开发语言·前端·javascript·学习·ecmascript
我不是懒洋洋39 分钟前
从零实现一个RPC框架:远程调用与服务治理
c++
困意少年1 小时前
从统一初始化到移动语义:C++11 为什么是现代 C++ 的起点
c++
Jun6261 小时前
QT(3)-线程中使用控件
开发语言·qt
stolentime1 小时前
CF2066D1 Club of Young Aircraft Builders (easy version)题解
c++·算法·动态规划·组合数学
xiaoshuaishuai81 小时前
C# AvaloniaUI ProgressBar用法
开发语言·c#
Dillon Dong1 小时前
【风电控制】高低穿现场失败的原因分析——算法简单但工程复杂
算法·变流器·风电控制·dfig
咋吃都不胖lyh1 小时前
LangGraph标准构建示例
开发语言·python