打卡信奥刷题(489)用C++信奥P6444[普及组/提高] [COCI2010-2011#1] PROFESOR

[COCI2010-2011#1] PROFESOR

题目描述

在一个较长的教室中, n n n 张桌子排成一排,每张桌子坐着 2 2 2 个学生。
学生之所以胡思乱想是因为他们即将参加美术课,而他们的老师正计划对他们进行检查。

每个学生都学习过美术,但是只学习了一定水平。 这位教授可以通过脸上的表情告诉他们他们学了多少。 这位教授是一名艺术家,每个年级都使用不同的彩色铅笔。不幸的是,今天他只带了 1 1 1 支铅笔。

为了使考试看起来公平,他想选择 2 2 2 张桌子,并从他所选择的 2 2 2 张桌子(包括所选的桌子)之间的每张桌子中向 1 1 1 位学生提问。 重要的是所有受试学生都应获得相同的成绩,因此他可以用唯一的铅笔将其写下来。

教授想知道他可以通过这种方式检查的最大学生人数,以及学生将获得的分数。

输入格式

输入数据共 n + 1 n+1 n+1 行。

第一行包含一个整数 n n n,含义如题所示。

接下来的 n n n 行,每行包含两个整数: a i a_i ai b i b_i bi,分别表示坐在课桌 i i i 上的学生的成绩。

输出格式

输出数据共一行。

第一行包含 2 2 2 个数字,并用一个空格隔开,分别表示教授可以考核的最大学生人数以及这些学生将获得的分数。

如果有多种解决方案,请输出分数最小的解决方案。

样例 #1

样例输入 #1

1
1 5

样例输出 #1

1 1

样例 #2

样例输入 #2

3
3 5
4 5
1 3

样例输出 #2

2 5

样例 #3

样例输入 #3

4
2 1
3 2
5 3
2 5

样例输出 #3

2 2

提示

数据范围

对于 100 % 100\% 100% 的数据, 1 ≤ n ≤ 1 0 5 1 \le n \le 10^5 1n105 1 ≤ a i , b i ≤ 5 1 \le a_i, b_i \leq 5 1ai,bi5

说明

题目译自 COCI2010-2011 CONTEST #1 T2 PROFESOR

C++实现

#include<bits/stdc++.h>
using namespace std;
int a[100001],b[100001];
int n,maxx,now;
int main(){
scanf(“%d”,&n);
for(int i=0;i<n;++i)scanf(“%d%d”,&a[i],&b[i]);
for(int i=1;i<=5;i++){
int cnt=0;
for(int j=0;j<n;++j){
if(a[j]==i||b[j]==i)cnt++;
else cnt=0;
if(cnt>maxx){
maxx=cnt;
now=i;
}
}
}
printf(“%d %d\n”,maxx,now);
return 0;
}

在这里插入图片描述

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值