CF1492D - Genius’s Gambit
Posted Luowaterbi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CF1492D - Genius’s Gambit相关的知识,希望对你有一定的参考价值。
1492D - Genius’s Gambit
题意:
给a个0,b个1,请你构造两个二进制数x,y,使得x-y有k个1。x,y必须有先导1。
题解:
显然,在至少有2个1的时候,有多少个0,x-y就可以有多少个1.
110000-100001=001111
然后我就愉快的WA了一发。
再有多个1的时候,还可以增加1.
1110000-1010001=0011111
111110000-101110001=001111111
所以前面有多少个1(除了第一个1),就可以再增加多少个1.
所以减去末尾的1和开头的1, k ≤ a + b − 2 k\\leq a+b-2 k≤a+b−2时一定有解。
然后我又WA了一发
注意a,b,k是否为0/1.
a
=
=
1
∧
k
≠
0
a==1 \\land k\\neq 0
a==1∧k=0时,不管b多少,显然无解。
然后我又又WA了一发
b = = 0 ∧ k ≠ 0 b==0 \\land k\\neq 0 b==0∧k=0时,不管a多少,显然无解。
然后我又又WA了一发
k = = 0 k==0 k==0 无论a,b多少,都是有解的。
AC代码:
#include <cstdio>
#include <iostream>
#include <vector>
#include <string>
#include <queue>
#include <algorithm>
#include <cmath>
#include <set>
#include <map>
#include <iomanip>
#include <cstdlib>
#include <stack>
#include <cstring>
#define rep(i,a,b) for(int i=(a);i<=(b);i++)
#define repp(i,a,b) for(int i=(a);i<(b);i++)
#define lep(i,a,b) for(int i=(a);i>=(b);i--)
#define lepp(i,a,b) for(int i=(a);i>(b);i--)
#define pii pair<int,int>
#define pll pair<long long,long long>
#define mp make_pair
#define All(x) x.begin(),x.end()
#define ms(a,b) memset(a,b,sizeof(a))
#define INF 0x3f3f3f3f
#define INFF 0x3f3f3f3f3f3f3f3f
#define multi int T;scanf("%d",&T);while(T--)
using namespace std;
typedef long long ll;
typedef double db;
const int N=2e5+5;
const int mod=1e9+7;
const db eps=1e-6;
const db pi=acos(-1.0);
int a,b,k,num[N];
int main()
#ifndef ONLINE_JUDGE
freopen("D:\\\\work\\\\data.in","r",stdin);
#endif
cin>>b>>a>>k;
if(k==0)
cout<<"YES"<<endl;
rep(i,1,a) cout<<1;
rep(i,1,b) cout<<0;
cout<<endl;
rep(i,1,a) cout<<1;
rep(i,1,b) cout<<0;
return 0;
if(k>a+b-2||a==1||b==0) cout<<"NO"<<endl;
else
cout<<"YES"<<endl;
rep(i,1,a) cout<<1;
rep(i,1,b) cout<<0;
cout<<endl;
if(k<=b)
rep(i,1,a-1) cout<<1;
rep(i,1,k) cout<<0;
cout<<1;
rep(i,1,b-k) cout<<0;
cout<<endl;
else
rep(i,1,a-(k-b)-1) cout<<1;
cout<<0;
rep(i,1,k-b) cout<<1;
rep(i,1,b-1) cout<<0;
cout<<1;
以上是关于CF1492D - Genius’s Gambit的主要内容,如果未能解决你的问题,请参考以下文章