F 爱音的01串构造
要使得mex之和最大,则全1子串的数量要最少,即让全1子串的最大长度最小;
1多0少(a>b):以‘0’为间隔,将‘1’分成a+1份,全0子串的数量恰好为a
0多1少(a<b):以‘1’为间隔,将‘0’分成b+1份,全1子串的数量恰好为b
01一样多(a=b):按照01排列
#include <bits/stdc++.h>
using namespace std;
int main()
{
int T;
cin>>T;
while(T--){
int a,b;
cin>>a>>b;
string s;
if(a==b){
for(int i=0;i<a;i++){
s+="01";
}
}else{
char c0='0',c1='1';
if(a<b){
swap(a,b);//交换数量,使得a始终存储教的的数
swap(c0,c1);//交换字符,保持对应关系
}
int x=a/(b+1);
int y=a%(b+1);
for(int i=0;i<b+1;i++){
s+=string(x+(y>0),c0);
if(y>0) y--;
s+=c1;
}
s.pop_back();//去除末尾多加的c1
}
cout<<s<<"\n";
}
return 0;
}
I 初华的扭蛋机
下注一枚筹码的期望是负的,低于不下注的期望收益0,
因此不下注是最优解
#include <bits/stdc++.h>
using namespace std;
int main()
{
cout<<"######";
return 0;
}

京公网安备 11010502036488号