【笔记】用pair同时存三个数据

B - Roulette

做题链接:abc

问题陈述

N人、1人、2人、......人、N人正在玩轮盘赌。一次轮盘赌的结果是从0到36的37个整数中的一个。对于每个i=1,2,...,N,i人在37个可能结果中的Ci​个下了注:Ai,1​,Ai,2​,...,Ai,Ci​​.

转盘已经转动,结果是X。打印所有投注在X上最少的人的号码,按**由小到大的顺序排列。

更正式地说,打印所有在1和N之间的整数i,这些整数满足以下两个条件,按升序

  • i人在X上下注。
  • 对于每个j=1,2,...,N,如果人j投注了X,那么就是Ci≤Cj。

请注意,可能没有要打印的数字(见示例输入 2)。

限制因素

  • 1≤N≤100
  • 1≤Ci≤37
  • 0≤Ai,j≤36
  • Ai,1,Ai,2,...,Ai,Ci对每个 i=1,2,...,N来说都是不同的。
  • 0≤X≤36
  • 所有输入值均为整数。

输入

输入内容由标准输入法提供,格式如下

复制代码
N
C1​
A1,1​ A1,2​ …… A1,C1​​
C2​
A2,1​ A2,2​ …… A2,C2​​
⋮⋮
CN​
AN,1​ AN,2​ …… AN,CN​​
X

输出

设 B1​,B2​,...,BK​是按升序打印的数字序列。使用以下格式,在第一行打印要打印的数字计数 K,在第二行打印用空格分隔的 B1​,B2​,...,BK​:

复制代码
K
B1​ B2​ …… BK​

输入样本 1

复制代码
4
3
7 19 20
4
4 19 24 0
2
26 10
3
19 31 24
19

样本输出 1

复制代码
2
1 4

转盘已经转动,结果是19。投注19的人有1、2和4,他们投注的次数分别是3、4和3。因此,在投注19的人中,投注最少的是1和4。

输入样本 2

复制代码
3
1
1
1
2
1
3
0

输出示例 2

复制代码
0

转盘已经转动,结果是0,但没有人投注0,所以没有数字要打印。

代码

复制代码
// Problem: B - Roulette
// Contest: AtCoder - AtCoder Beginner Contest 314
// URL: https://atcoder.jp/contests/abc314/tasks/abc314_b
// Memory Limit: 1024 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)

#include<bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef pair<int,int> pii;

const int N = 110;

int n;
int a,b,c; 
	
int main(){
	cin>>n;
	
	vector<pii> v[40];
	
	for(int i=0;i<n;i++){
		cin>>c;
		for(int j=0;j<c;j++){
			cin>>a;
			v[a].push_back({c,i});
		}
	}
	
	for(int i=0;i<=36;i++){
		sort(v[i].begin(),v[i].end());
	}
	
	int x;
	cin>>x;
	if(v[x].size()==0){
		cout<<"0\n";
		return 0;
	}
	int minv=v[x][0].first;
	vector<int> ve;
	
	for(int i=0;i<v[x].size();i++){
		if(v[x][i].first==minv){
			ve.push_back(v[x][i].second+1);
		}
	}
	
	cout<<ve.size()<<"\n";
	for(auto i:ve){
		cout<<i<<' ';
	}

	
	return 0;	

}
相关推荐
暴躁小师兄数据学院1 小时前
【AI大数据工程师特训笔记】第14讲:Linux操作系统与shell脚本
大数据·人工智能·笔记
土狗TuGou1 小时前
SQL内功笔记 · 第8篇:事务的四大特性与隔离级别
数据库·笔记·后端·sql·mysql·oracle
智者知已应修善业2 小时前
【51单片机用T0定时器方式1,实现0.5S的时间间隔实现第一次一个灯亮、第二次二个灯亮,直到全部灯亮,然后重复整个过程】2023-12-29
c++·经验分享·笔记·算法·51单片机
智者知已应修善业3 小时前
【51单片机4位静态数码管显示1234】2023-11-14
c++·经验分享·笔记·算法·51单片机
whyTeaFo3 小时前
MIT6.1810: xv6 book Chapter4: Traps and system calls 笔记
笔记
jimbo_lee3 小时前
yocto 用法(随手笔记,记录以备不时之需)
笔记·yocto
胡图图不糊涂^_^6 小时前
测试用例篇——设计测试用例的方法
笔记·学习·测试用例·判定表法·正交法生成用例测试·等价类·边界值
IT19956 小时前
Dify笔记-知识库创建后设置和召回测试
笔记·dify
飞翔中文网7 小时前
Java学习笔记之抽象类
java·笔记·学习
中屹指纹浏览器8 小时前
2026指纹浏览器行为指纹对抗技术详解:从算法识别到真人模拟全方案
经验分享·笔记