专栏文章

题解:P12860 [NERC 2020 Online] Kate' s 2021 Celebration

P12860题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@mip2awz1
此快照首次捕获于
2025/12/03 05:00
3 个月前
此快照最后确认于
2025/12/03 05:00
3 个月前
查看原文

题意

Kate 在买气球,每个气球有自己的数字。Kate 喜欢包含 2 0 2 1 四个数字的气球(无论顺序)。现在她要找到最便宜的气球。

思路

模拟即可,使用字符串存储气球数字,然后用一个数组存储每个数字计算的次数,要是 2 出现的次数 cnt22cnt_2 \ge 20 出现的次数 cnt01cnt_0 \ge 11 出现的次数 cnt11cnt_1 \ge 1,这个气球就是 Kate 要的。最后比较找出最小值即可。
记得给统计数组 cnt 重置。

代码

CPP
#include<bits/stdc++.h>
using namespace std;
long long n,a,price,ans=0,cnt[15]={};
string s;
int main()
{
    cin>>n;
    price=10000000;
    for(int i=1;i<=n;++i)
        {
            cin>>a>>s;
            for(int j=0;j<s.size();++j)
                {
                    cnt[int(s[j])-int('0')]++;
                }
            if(cnt[2]>=2&&cnt[0]>=1&&cnt[1]>=1)
            {
                if(a<price)
                {
                	ans=i;
                	price=a;
				}
            }
            cnt[2]=0;
            cnt[0]=0;
            cnt[1]=0;
        }
    cout<<ans<<endl;
    return 0;
}

评论

0 条评论,欢迎与作者交流。

正在加载评论...