题目传送门
题意翻译 题目描述高桥烦恼着怎样按顺序卖章鱼烧。因为知道做了的章鱼烧不好吃,所以高桥不想卖那样的章鱼烧,但是只卖刚做好的话,卖的章鱼烧的数量减少了。 另外,高桥君认为,光让客人等的话,客人会逐渐离开的。 于是,他就把在T秒内制作的章鱼烧继续卖下去,就决定调查客人是否能卖掉。 章鱼烧是A1、A2、…、AN秒后开始烤。 客人是B1、B2、…、在BM秒后来。 对于一个客人,卖一个章鱼烧。如果所有的客人都卖章鱼烧的话,请输出yes,如果卖不出去的话,请输出no。
输入输出格式 输入格式: 输出格式:如果所有的客人都会卖章鱼烧的话,请输出yes,如果卖不出去的话,请输出no。 另外,请在输出的末尾加入换行。
输入输出样例输入 #1
1 3 1 2 3 3 2 3 4
输出 #1
yes
输入 #2
1 3 1 2 3 3 2 3 5
输出 #2
no
输入 #3
1 3 1 2 3 10 1 2 3 4 5 6 7 8 9 10
输出 #3
no
输入 #4
1 3 1 2 3 3 1 2 2
输出 #4
no
输入 #5
2 5 1 3 6 10 15 3 4 8 16说明
Sample Explanation 1
-每一个客人都买了一秒前做成的章鱼烧,可以给所有的客人卖章鱼烧。
Sample Explanation 2
-不能卖给最后的客人章鱼烧。
Sample Explanation 3
-高桥君的章鱼烧店很受欢迎。
Sample Explanation 4
-让第三位客人久等了。
思路:(见下方代码)
#includeusing namespace std; int t,n,m,a[100010],b[100010],now=1;//now用来记录当前卖哪一个章鱼烧 bool f[1000010];//记录第i个章鱼烧是否用过 int main() { cin>>t>>n; for(int i=1;i<=n;i++) cin>>a[i]; cin>>m; for(int i=1;i<=m;i++) cin>>b[i]; sort(a+1,a+n+1); sort(b+1,b+m+1); if(n =b[i]) {//如果能卖 f[j]=1;//此章鱼烧已用 flag=1;//这个客人有章鱼烧吃 now=j+1;//之前的肯定都不会被后面的客人买了,不然这个客人为什么要选这一个呢 break;//任务完成了,每个客人只需要一个章鱼烧 } } if(!flag) {//如果没卖出去(被投诉了...) cout<<"no"<



