关注
有一个投篮游戏。球场有p个篮筐,编号为0,1...,p-1。每个篮筐下有个袋子,每个袋子最多装一个篮球。有n个篮球,每个球编号x
i
。规则是将数字为x
i
的篮球投到x
i
除p的余数为编号的袋里。若袋里已有篮球则球弹出游戏结束输出i,否则重复至所有球都投完。输出-1。问游戏最终的输出是什么?
#include<iostream>
#include <set>
usingnamespacestd;
//作者 darren_wang
intmain() {
intp, n; //篮筐数,篮球数
intx, i;
while(cin >> p >> n){
intflag=0; //作用:1.判断是否有冲突 2.如果有冲突则记录第一个冲突的序号
set<int> myset; //每一批输入样例构造一个空集合
for(i=1; i<=n; i++){ //以1开始,便于这个题目处理
cin >> x;
if(myset.find(x%p)!=myset.end() && !flag) flag =
i; //注意输入示例,只记录第一次冲突的,后面再有冲突的并不记录
elsemyset.insert(x%p);
}
if(flag) cout << flag << endl; // 有冲突
elsecout << -1 << endl; // 没有冲突
}
return0;
}
查看原帖
点赞 2
相关推荐
10-29 20:22
湖南工商大学 产品经理 点赞 评论 收藏
分享
点赞 评论 收藏
分享
10-10 14:40
香港城市大学 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 校招生月薪1W算什么水平 #
34410次浏览 189人参与
# 哪一瞬间觉得自己长大了 #
38226次浏览 493人参与
# “vivo”个offer #
38879次浏览 280人参与
# 如果上班像打游戏,你最想解锁什么技能 #
8166次浏览 70人参与
# vivo工作体验 #
27917次浏览 124人参与
# 为了实习逃课值吗? #
28664次浏览 270人参与
# 工作后明白的那些道理 #
21726次浏览 225人参与
# 一人一个landing小技巧 #
123872次浏览 1441人参与
# 我是面试官,请用一句话让我破防 #
26618次浏览 128人参与
# 实习最想跑路的瞬间 #
87461次浏览 543人参与
# 中美关税战对我们有哪些影响 #
43001次浏览 361人参与
# 机械制造2023笔面经 #
149558次浏览 840人参与
# 如果重来一次你还会读研吗 #
201621次浏览 1932人参与
# AI时代,哪些岗位最容易被淘汰 #
3347次浏览 27人参与
# 中美关系回暖,你会选择出海吗? #
6690次浏览 107人参与
# 华为保温 #
107658次浏览 408人参与
# 哪些行业值得去? #
5362次浏览 50人参与
# i人适合做什么工作 #
11399次浏览 97人参与
# 美团开奖 #
222750次浏览 1150人参与
# 读研or工作,哪个性价比更高? #
78247次浏览 769人参与
# 如果秋招能重来,我会____ #
37489次浏览 300人参与

