题解 P2550 【[AHOI2001]彩票摇奖】

简介: 题目链接 大家有没有发现数据范围好小呀我们只需要开7~8的数组就好!!中间比较的时候懒得用for循环比较了。直接爆搜。废话不多说,直接上代码。 #include using namespace std; int a[7];//作为中奖号码 int b[7];//作为每一回彩票号码 int c[7];//作为中奖的等级 int main() { int n; cin>>n;//彩票张数 for(int i=0;i>a[i];//输入中奖号码。

题目链接

大家有没有发现数据范围好小呀

我们只需要开7~8的数组就好!!

中间比较的时候懒得用for循环比较了。直接爆搜。

废话不多说,直接上代码。

#include<bits/stdc++.h>
using namespace std;
int a[7];//作为中奖号码
int b[7];//作为每一回彩票号码
int c[7];//作为中奖的等级
int main()
{
    int n;
    cin>>n;//彩票张数
    for(int i=0;i<7;i++)
    {
        cin>>a[i];//输入中奖号码。
    }
    for(int i=0;i<n;i++)//n张,循环n次
    {
        int sum=0;//每一张相同的个数,每次循环初始化为0;
        for(int j=0;j<7;j++)//输入彩票号
        {
        cin>>b[j];
        }
        for(int j=0;j<7;j++)//精髓。因为数据较小,所以每一回懒得用for循环对比,直接暴力比较
        {
        if(b[j]==a[0]||b[j]==a[1]) sum++;
        else if(b[j]==a[2]||b[j]==a[3]) sum++;
        else if(b[j]==a[4]||b[j]==a[5]) sum++;
        else if(b[j]==a[6]||b[j]==a[7]) sum++;
        }
        c[sum-1]+=1;//注意点这里大家应该会有问题,一会就明白了。不过###一定要减一###不多说,自己想。
    }
    for(int i=6;i>=0;i--)//我们反序存的奖级。就反序输出就好啦。
    {
        cout<<c[i]<<" ";//输出
    }
    return 0;//程序拜拜。
}

 


搜索还可以这么写

for(int j=0;j<7;j++)
{
    for(int k=0;k<7;k++)
    {
        if(b[j]==a[k]) sum++;
    }
}
       c[sum-1]+=1;

 


好哒,没了

相关文章
|
3月前
leetcode-846:一手顺子
leetcode-846:一手顺子
11 0
|
4月前
【每日一题Day273】LC860柠檬水找零 | 贪心
【每日一题Day273】LC860柠檬水找零 | 贪心
17 0
【每日一题Day273】LC860柠檬水找零 | 贪心
|
4月前
【每日一题Day334】LC2591将钱分给最多的儿童 | 贪心
【每日一题Day334】LC2591将钱分给最多的儿童 | 贪心
22 0
|
3月前
|
Java
leetcode-860:柠檬水找零
leetcode-860:柠檬水找零
25 0
|
4月前
|
算法
六六力扣刷题贪心算法之柠檬水找零
六六力扣刷题贪心算法之柠檬水找零
38 0
|
5月前
|
算法
代码随想录算法训练营第四十五天 | LeetCode 70. 爬楼梯、322. 零钱兑换、279. 完全平方数
代码随想录算法训练营第四十五天 | LeetCode 70. 爬楼梯、322. 零钱兑换、279. 完全平方数
56 1
|
9月前
|
C++
【PTA天梯赛】L1-011 —— L1-020 c++ 题解
【PTA天梯赛】L1-011 —— L1-020 c++ 题解
246 0
|
10月前
题目 2664: 蓝桥杯2022年第十三届省赛真题-求和
题目 2664: 蓝桥杯2022年第十三届省赛真题-求和
leetcode 860柠檬水找零
leetcode 860柠檬水找零
47 0
leetcode 860柠檬水找零