作业26

一、求n个数中每个数出现的次数

题目描述
从键盘读入 n 个整数(n≤100),这 n 个数都是 1 ~ 10 之间的数,请从小到大输出每个出现过的数,以 及统计出每
个数出现的次数? 比如:假设读入 5 个数,分别为 1 2 3 3 5 ,统计结果如下:1 出现 1 次,2 出现 1 次,3 出现 2 次,
5 出现 1 次。 输出格式如下:
输入
第 1 行输入一个整数 n 。
第 2 行输入 n 个整数,用空格隔开。
输出
输出若干行,每行 2 个数,用空格隔开,按照从小到大的顺序,输出每个数以
及每个数出现的次数。
青少年编程
V 132

#include<iostream>
#include<iomanip>
using namespace std;
int a[1000];
int cnt[40];
int main()
{
    int n;
    cin>>n;
    for(int i = 0;i<n;i++)
    {
        cin>>a[i];
    }
    for(int i = 0;i<n;i++)
    {
        int b = a[i];
        cnt[b]++;
    }
    for(int i = 1;i<=30;i++)
    {
        if(cnt[i]<0)
        {
            cout<<i<<" "<<cnt[i]<<endl;
        }
    }
    
   
    
    return 0;
}

01376357

二、声音识别

题目描述
学校王老师研发了一套新的声音识别系统,该系统预先将每位同学的学号和声音录入之后,只要同学一 说话,就知道是哪个学号的
同学在说话(不同的同学声音是完全不一样的)王老师将系统装在了教室,系统收集到了一节英语课中同学们说话的 n 个片段,并
转换为了同学们的学 号,请你编程帮助王老师计算出,有多少个同学在英语课中发过言,并按照学号由小到大,输出每位同 学的学
号及该学号的同学发言的次数。 比如,假设经过系统分析,得到如下的 88 个同学的学号分别是:8 1 6 1 8 6 7 2,表示同学们的发
言顺 序分别是:8 号、1 号、6 号、1 号、8 号、6 号、7 号、2 号,那么一共有 5位同学发过言,按照学号由 小到大输出发言次数如
下:
分别代表 1号同学发言 2次、2 号同学发言 1 次、6 号同学发言 2次、7 号同学发言 1 次、
8 号同学发言2 次。
输入
输入有 2 行,第 1 行有一个整数 n(3≤n≤10000);
第二行有 n 个数字(这些整数都是 1~100 之间的整数,含 1 和 100),数字之间用空格
隔开,代表同学们的学号。
输出
第 11 行输出 11 个整数,代表总共有多少名同学发过;
接下来输出若干行,每行 2 个整数,用空格隔开,表示按照学号由小到大输出发言同学
的学号及每位同学发言的次数。
青少年编程
V 13201376357

三、数字出现次数

题目描述
有 50 个数( 0 19),求这 50个数中相同数字出现的最多次数为几次?
输入
50 个数字。
输出
1 个数字(即相同数字出现的最多次数)。

#include<iostream>
#include<iomanip>
using namespace std;
int a[1000];
int cnt[40];
int main()
{
    int n = 50;
    int x;
    cin>>x;
    int max = -1;
    int maxi = -1;
    for(int i = 0;i<=n;i++)
    {
        a[x]++;
        if(a[x]>maxi)
        {
            max = x;
            maxi = a[x];
        }
    }
    cout<<max;

   
    
    return 0;
}

3201376357

四、缺失的数子

题目描述
有 n 个数字,值就是 1 ~ n ,现发现丢失了 2 个数字,请你根据剩余的 n - 2 个数字,编程计算一下,缺失的是哪
两个数字呢?
输入
第 1 行为整数 N (N≤100000)。
第 2 行有 N 2 个整数(均用空格隔开)表示了剩下 N 2 个数字的值。
输出
一行,按数字从小到大顺序输出两缺失的数字。两个数字之间用一个空格隔开。
青少年编程
V

#include<iostream>
#include<iomanip>
using namespace std;
int a[1000];
int cnt[40];
int main()
{
    int n;
    cin>>n;
    for(int i = 0;i<n-2;i++)
    {
        int x;
        cin>>x;
        a[x] = x;
    }
    for(int i = 0;i<=n;i++)
    {
        if(a[i] == 0)
        {
            cout<<i<<" ";
        }
    }
    
    return 0;
}

13201376357

五、选班委

题目描述
小 T 和他的小伙伴们到 CZ 中学的创新实验班报到后的第一件事就是选班委,班主任 R
老师走上讲台宣布了选举办法,首先让全班 40 位同学依次上讲台做自我介绍,然后按照
职位一个一个依次进行选举,先选班长,再选学习委员……,选举办法是每人投一票,谁
的票数最高就选谁担任这个职位,最后围棋高手小 W 颇具大将风范被选为班长,学神小
Z 当选为学习委员那是众望所归,小 S 则有天生一副好嗓子,不但歌唱得好,并且能将
多种 动物的叫声模仿得惟妙惟肖,因此当选为文体委员。小 T 同学在本次选举中负责计
票,他 觉得手工计票太慢了,且容易出错,因此想请你编一个程序实现机器计票功能。
这个程序 要能实现以下功能:全班共有 n 个同学,依次用 1 到 n 编号,共有 m 个人
(包括班主任和 任课老师等)参与了投票,每张选票上写有一个同学的编号,得票最多
的同学当选。
输入
输入数据第一行包含两个用空格隔开的正整数 n 和 m,其中 n≤200,m≤2000。
第二行有 m 个用空格隔开的不超过 n 的正整数,表示这 m 张选票上所写的编号。
输出
输出得票最多的那个同学的编号。如果同时有两名以上同学得票最多,输出编号最小的
那个同学的编号。
青少年编程
V 13201376357

六、夏令营小旗手

题目描述
夏令营在实验小学进行,组委会决定在实验小学的学生中推选一名小旗手,推选方法
如下:实验小学有 n 名学生(1≤n≤1000)。每名学生有一个学号,学号为1,2,…n。
同时,每名同学有一张选票,可以推选一名同学为小旗手。最后,得票最多者当选,
若得票最多者相同票数,则学号小者当选。
例如,选票为2 3 4 4 3 4 1 6,4号学生得票最多(3票)当选小棋手。
输入
第 1 行读入 n,x1 两个整数,n为学生数,x1 为第一个选票上的学号,之后的选票 x
i(i≥2)由下面的递推
关系给出:
x i =(x i 1 ×37+33031) mod n+1
其中 mod 为取余运算,例如,13 mod 8=5,21 mod 21=0。根据这个公式,就能从
x1推出
x2,x3,...xn。
青少年编程
V 13201376357

七、求N个整数的平均数、众数和中位数

题目描述
求 N 个整数的平均数,众数和中位数。
小知识:
1. 众数
如有 9 个数:17,13,17,9,17,17,3,16,17,其中 17 出现的次数最多,即为这组数的众数。
(本题确保测试数据中,出现次数最多的数只有一个)
2. 中位数
如有 9 个数:102,170,96,90,97,106,110,182,100。
将这 9个数按一定的顺序(从大到小或从小到大)排列后得到:
182,170,110,106,102,100,97,96,90。正中间的一个数是 102 , 102 是这组数的中位数。
而这 10 个数:106,99,104,120,107,112,33,102,97,100。
按一定顺序排列后得到:120,112,107,106,104,102,100,99,97,33。
正中间有两个数:104,102 ,中位数就是这两个数的平均数,即(104+102)/2=103.0 。
输入
第一行为整数 N (5≤N≤10000 );
第二行为空格隔开的 N 个数 Ai ( 0≤Ai≤100)。
输出
输出空格隔开的平均数 众数 中位数(平均数保留两位小数,中位数保留一位小数)。
青少年编程

八、找筷子 

320137635
题目描述
经过一段时间的紧张筹备,电脑小组的“RP餐厅”终于开业了,这天,经理 LXC 接到了一个定餐大单,可把大家乐坏了!
员工们齐心协力按要求准备好了套餐正准备派送时,突然碰到一个棘手的问题,筷子!CX 小朋友找出了餐厅中所有的筷
子,但遗憾的是这些筷子长短不一,而我们都知道筷子需要长度一样的才能组成一双,更麻烦的是 CX 找出来的这些筷子
数量为奇数,但是巧合的是,这些筷子中只有一只筷子是落单的,其余都成双,善良的你,可以帮 CX 找出这只落单的筷
子的长度吗?
输入
第一行读入一个数 N,它代表 C X找到的筷子的根数。(10≤N≤10000) 第二行是 N 个用空格隔开的
数,代表筷子的长度。(筷子长度都是 1 1000 之间的整数)
输出
一行,落单的筷子的长度。

九、去除重复数字

7
题目描述
给你 N 个数(N≤100),每个数都在(0 1000)之间,
其中由很多重复的数字,请将重复的数字只保留一个,
并将剩下的数由小到大排序并输出。
输入
输入有 2 行;
第 1 行为 1个正整数,表示数的个数:N;
第 2 行有 N 个用空格隔开的整数。
输出
第 1 行为 1 个正整数 M,表示不相同数的个数。
接下来的 M 行,每行一个整数,表示从小到大排好序
的不相同的数。
青少年编程
V 1320137

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    int a[10];
    int b[10];
    int la;
    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(a[j]>a[j+1])
            {
                int tmp = a[j];
                a[j] = a[j+1];
                a[j+1] = tmp;
            }
        }
        if(f == false)
        {
            b[lb] = a[i];
            lb++;
        }
    }
    for(int i = 0;i<lb;i++)
    {
        cout<<b[i]<<" "<<endl;
    }
    return 0;
}

6357

十、数字出现次数

题目描述
有 50 个数( 0 19),求这 50个数中相同数字出现的最多次数为几次?
输入
50 个数字。
输出
1 个数字(即相同数字出现的最多次数)。
青少年编程
#include<iostream>
#include<iomanip>
using namespace std;
int a[1000];
int cnt[40];
int main()
{
    int n = 50;
    int x;
    cin>>x;
    int max = -1;
    int maxi = -1;
    for(int i = 0;i<=n;i++)
    {
        a[x]++;
        if(a[x]>maxi)
        {
            max = x;
            maxi = a[x];
        }
    }
    cout<<max;

   
    
    return 0;
}

十一、求n个数中出现次数最多的数

题目描述
从键盘读入 n 个整数( n≤100 ),这 n 个数都是 1 10 之间的数,请求出出现次数最多的数是哪个数?
比如:假设读入 5 个数,分别为 1 2 3 3 5 ,出现次数最多的数就是 3 。(本题的数据确保出现次数最多
的数只有 1 个,不存在多个数出现的次数都最多的情况)
输入
第 1 行输入一个整数 n。
第 2 行输入 n 个整数,用空格隔开。
输出
输出出现次数最多的数。
青少年编程
V 13201376357

#include<iostream>
#include<iomanip>
usingnamespacestd;
inta[1000];
intcnt[40];
intmain()
{
    intn=50;
    intx;
    cin>>x;
    intmax=-1;
    intmaxi=-1;
    for(inti= 1;i<=n;i++)
    {
        a[x]++;
                int v;
                cin>>v;
        if(a[x]>maxi)
        {
            max = a[x];
            i = v;
        }
    }
    cout<<v;
    
     
    
    return0;
}

  • 24
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据提供的引用内容,我们可以确定老男孩python全栈26期课后作业,包括了两个集合pythons和linuxs,分别记录了报名python课程和linux课程的学员名字。其pythons集合包括了'alex','egon','yuanhao','wupeiqi'等学员的名字。和的代码分析结果,我们可以得出以下结论:在一个函数内部定义的函数(内部函数)可以访问外部函数的变量。在引用的例子,内部函数inner()可以访问外部函数func()的变量name,并将其打印出来。结果是'name'为'景女神'。而在引用的例子,内部函数inner()也可以访问外部函数func()的变量name,并将其打印出来。结果同样是'name'为'景女神'。同时,返回值v是调用外部函数func()返回的内部函数inner(),并且返回值result是调用v()的结果,也就是'老男孩'。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [老男孩Python全栈学习 S9 日常作业 001](https://blog.csdn.net/weixin_39893728/article/details/110982028)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [老男孩python全栈s21day12作业](https://blog.csdn.net/Bensonofljb/article/details/100058955)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值