作业-去重复统计(2)

发布时间:2024年01月07日

目录

免费游戏

投票

军训领物资

统计分数出现的次数

免费游戏2


免费游戏

免费游戏
题目描述

steam游戏平台官方周年庆,限时开放30款游戏免费下载(编号1-30)官方想知道哪些游戏被下载过

输入

第一行是一个整数n代表下载的总数量

第二行的n个整数代表n次下载游戏的编号

输出

1行,被下载过的游戏编号列表,中间用空格隔开

样例

输入复制

101 3 3 5 2 4 1 6 9 9

输出复制

1 3 5 2 4 6 9

#include <iostream>
using namespace std;
int main()
{
?? ?int a[110];//原数组
?? ?int b[110];//新数组
?? ?int la = 0;
?? ?int lb = 0;
?? ?cin>>la;
?? ?for(int i = 0;i<la;i++)
?? ?{
?? ??? ?cin>>a[i];
?? ?}
?? ?for(int i = 0;i<la;i++)
?? ?{
?? ??? ?bool f = false;
?? ??? ?for(int j = 0;j<lb;j++)
?? ??? ?{
?? ??? ??? ?if(a[i] == b[j])
?? ??? ??? ?{
?? ??? ??? ??? ?f = true;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?if(f == false)
?? ??? ?{
?? ??? ??? ?b[lb] = a[i];
?? ??? ??? ?lb++;
?? ??? ?}
?? ?}
?? ?for(int i = 0;i<lb;i++)
?? ?{
?? ??? ?cout<<b[i]<<" ";
?? ?}
?? ?return 0;
}

投票

题目描述

王者荣耀要评选出最受欢迎的角色,每个角色都有编号(1-100)请你设计投票系统,可以显示每个角色(对应编号)出现的次数显示按票数从大到小排序。如果票数相等,不分先后顺序。

输入

第一行是一个整数n代表投票数量

第二行的n个整数代表投票的角色编号

输出

n行,每行两个整数

第一个数角色编号,第二个整数代表获得的票数

样例

输入复制

10

2 23 3 2 23 65 1 1 30 23

输出复制

23 ?3

2 ?2

1 ?2

3 ?1

65 ?1

30 ?1

#include <iostream>
using namespace std;
int main()
{
?? ?int a[110];
?? ?int b[110];
?? ?int c[110];
?? ?int la = 0;
?? ?int lbc = 0;
?? ?cin>>la;
?? ?for(int i = 0;i<la;i++)
?? ?{
?? ??? ?cin>>a[i];
?? ?}
?? ?for(int i = 0;i<la;i++)
?? ?{
?? ??? ?bool f = false;
?? ??? ?for(int j = 0;j<lbc;j++)
?? ??? ?{
?? ??? ??? ?if(a[i] == b[j])
?? ??? ??? ?{
?? ??? ??? ??? ?f = true;
?? ??? ??? ??? ?c[j]++;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?if(f == false)
?? ??? ?{
?? ??? ??? ?b[lbc] = a[i];
?? ??? ??? ?c[lbc] = 1;
?? ??? ??? ?lbc++;
?? ??? ?}
?? ?}
?? ?for(int i = 0;i<la-1;i++)
?? ?{
?? ??? ?for(int j = 0;j<la-1-i;j++)
?? ??? ?{
?? ??? ??? ?if(c[j] < c[j+1])
?? ??? ??? ?{
?? ??? ??? ??? ?int tam = c[j];
?? ??? ??? ??? ?c[j] = c[j+1];
?? ??? ??? ??? ?c[j+1] = tam;
?? ??? ??? ??? ?int tam2 = b[j];
?? ??? ??? ??? ?b[j] = b[j+1];
?? ??? ??? ??? ?b[j+1] = tam2;
?? ??? ??? ?}
?? ??? ?}
?? ?}
?? ?for(int i = 0;i<lbc;i++)
?? ?{
?? ??? ?cout<<b[i]<<" "<<c[i]<<endl;
?? ?}
?? ?return 0;
}

军训领物资

题目描述

军训期间,童鞋们可以领用自己喜欢的颜色的水杯(颜色已编号1-50之间)教官想知道最受欢迎的颜色是哪个,领取了多少个,请你编程帮助教官实现功能假设最受欢迎的编号唯一

输入

第一行,一个整数n代表有多少人领取物资

第二行,n个整数代表每个人领取的颜色编号

输出

1行,领取数量最多的颜色编号及数量

第一个整数代表角色编号,第二个整数代表领取的数量

样例输入

复制

10

1 4 2 6 2 9 1 9 9 8

输出复制

9 3

#include <iostream>
using namespace std;
int main()
{
?? ?int a[110];
?? ?int n;
?? ?cin>>n;
?? ?for(int i = 0;i<n;i++)
?? ?{
?? ??? ?cin>>a[i];
?? ?}
?? ?int tam;
?? ?for(int i = 0;i<n;i++)
?? ?{
?? ??? ?if(a[i] < a[i+1])
?? ??? ?{
?? ??? ??? ?tam = a[i+1];
?? ??? ?}
?? ?}
?? ?int sum = 0;
?? ?for(int i = 0;i<n;i++)
?? ?{
?? ??? ?if(a[i] == a[i+1])
?? ??? ?{
?? ??? ??? ?sum++;
?? ??? ?}
?? ?}
?? ?cout<<tam<<" "<<sum;
?? ?return 0;
}

统计分数出现的次数

题目描述

考试结束后,老师想知道童鞋们的考试分数情况

输入全班n个童鞋的成绩,请你设计程序统计每个分数出现的次数

输入

第一行是一个整数n代表全班人士

第二行的n个整数分别每个同学的成绩

输出

n行,每行两个整数

第一个数代表成绩,第二个数代表该成绩的人数

样例

输入复制

10

90 99 100 99 80 60 60 70 90 60

输出复制

90 2

99 2

100 1

80 1

60 3

70 1

#include <iostream>
using namespace std;
int main()
{
?? ?int a[110];
?? ?int b[110];
?? ?int c[110];
?? ?int la = 0;
?? ?int lbc = 0;
?? ?cin>>la;
?? ?for(int i = 0;i<la;i++)
?? ?{
?? ??? ?cin>>a[i];
?? ?}
?? ?for(int i = 0;i<la;i++)
?? ?{
?? ??? ?bool f = false;
?? ??? ?for(int j = 0;j<lbc;j++)
?? ??? ?{
?? ??? ??? ?if(a[i] == b[j])
?? ??? ??? ?{
?? ??? ??? ??? ?f = true;
?? ??? ??? ??? ?c[j]++;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?if(f == false)
?? ??? ?{
?? ??? ??? ?b[lbc] = a[i];
?? ??? ??? ?c[lbc] = 1;
?? ??? ??? ?lbc++;
?? ??? ?}
?? ?}
?? ?for(int i = 0;i<lbc;i++)
?? ?{
?? ??? ?cout<<b[i]<<" "<<c[i]<<endl;
?? ?}
?? ?return 0;
}

免费游戏2

题目描述

steam游戏平台官方周年庆,限时开放30款游戏免费下载(编号1-30)

官方想知道哪些游戏被下载过,下载次数数多少,请按照游戏编号输出下载次数

输入

第一行是一个整数n代表下载的总数量

第二行的n个整数代表n次下载游戏的编号

输出

n行,每行2个整数,代表被下载过的游戏编号级下载次数

样例

输入复制

10

1 3 3 5 2 4 1 6 9 9

输出复制

1:2

2:1

3:2

4:1

5:1

6:1

9:2

#include <iostream>
using namespace std;
int main()
{
?? ?int a[110];
?? ?int b[110];
?? ?int c[110];
?? ?int la = 0;
?? ?int lbc = 0;
?? ?cin>>la;
?? ?for(int i = 0;i<la;i++)
?? ?{
?? ??? ?cin>>a[i];
?? ?}
?? ?for(int i = 0;i<la;i++)
?? ?{
?? ??? ?bool f = false;
?? ??? ?for(int j = 0;j<lbc;j++)
?? ??? ?{
?? ??? ??? ?if(a[i] == b[j])
?? ??? ??? ?{
?? ??? ??? ??? ?f = true;
?? ??? ??? ??? ?c[j]++;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?if(f == false)
?? ??? ?{
?? ??? ??? ?b[lbc] = a[i];
?? ??? ??? ?c[lbc] = 1;
?? ??? ??? ?lbc++;
?? ??? ?}
?? ?}
?? ?for(int i = 0;i<lbc;i++)
?? ?{
?? ??? ?cout<<b[i]<<":"<<c[i]<<endl;
?? ?}
?? ?return 0;
}

文章来源:https://blog.csdn.net/lybr513208/article/details/135443695
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。