PAT 1069. 微博转发抽奖(20)-乙级
小明PAT考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔N个人就发出一个红包。请你编写程序帮助他确定中奖名单。
输入格式:
输入第一行给出三个正整数M(<= 1000)、N和S,分别是转发的总量、小明决定的中奖间隔、以及第一位中奖者的序号(编号从1开始)。随后M行,顺序给出转发微博的网友的昵称(不超过20个字符、不包含空格回车的非空字符串)。
注意:可能有人转发多次,但不能中奖多次。所以如果处于当前中奖位置的网友已经中过奖,则跳过他顺次取下一位。
输出格式:
按照输入的顺序输出中奖名单,每个昵称占一行。如果没有人中奖,则输出“Keep going...”。
输入样例1:
9 3 2
Imgonnawin!
PickMe
PickMeMeMeee
LookHere
Imgonnawin!
TryAgainAgain
TryAgainAgain
Imgonnawin!
TryAgainAgain
输出样例1:
PickMe
Imgonnawin!
TryAgainAgain
输入样例2:
2 3 5
Imgonnawin!
PickMe
输出样例2:
Keep going...
分析:用mapp存储当前用户有没有已经中奖过~当输入的时候,判断当前字符串是否已经在mapp中出现过,如果出现过就将s+1。每次判断i是否等于s,如果等于s且当前用户没有中过奖,就将它的名字输出,并且s = s + n~并将mapp[str]标记为1,且flag标记为true表示有过人中奖。最后flag如果依然是false说明要输出Keep going...
#include <iostream>
#include <map>
using namespace std;
int main() {int m, n, s;scanf("%d%d%d", &m, &n, &s);string str;map<string, int> mapp;bool flag = false;for (int i = 1; i <= m; i++) {cin >> str;if (mapp[str] == 1) s = s + 1;if (i == s && mapp[str] == 0) {mapp[str] = 1;cout << str << endl;flag = true;s = s + n;}}if (flag == false) cout << "Keep going...";return 0;
}
PAT 1069. 微博转发抽奖(20)-乙级相关推荐
- PAT 1069. 微博转发抽奖(20)
1069. 微博转发抽奖(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 小明PAT考了满分,高兴之余决定 ...
- PAT 乙级 1069 微博转发抽奖 (20 分)
题目:PAT 乙级 1069 微博转发抽奖 (20 分) 经验总结: 可以建立一个set,用于存放中奖用户.若set中有此用户,代表此用户已中奖,奖品顺延. C++代码: #include<bi ...
- 【PAT乙】1069 微博转发抽奖 (20分) set
1069 微博转发抽奖 (20分) 小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一行 ...
- 1069. 微博转发抽奖(20)
1069. 微博转发抽奖(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 小明PAT考了满分,高兴之余决定 ...
- 1069 微博转发抽奖 (20分)
1069 微博转发抽奖 (20分) 小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一行 ...
- 1069 微博转发抽奖 (20 分)
1069 微博转发抽奖 (20 分) 小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一 ...
- 1069 微博转发抽奖 (20 分)(算法分析+代码实现)
1069 微博转发抽奖 (20 分) 题目链接 算法分析 用flag记录是否输出过获奖人名字 用map类型take记录某人是否拿走过奖品 用cnt记录间隔人数 然后按要求输出就好. 代码实现 #inc ...
- PAT乙级 | 1069 微博转发抽奖 (20分)
小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一行给出三个正整数 M(≤ 1000). ...
- PAT乙级1069微博转发抽奖 20(分)
题目 小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一行给出三个正整数 M( ≤ \l ...
最新文章
- YOLOv4全文阅读(全文中文翻译)
- 百度成立国内首个深度学习教育联盟,将制定行业标准
- 第十六周程序阅读(3)
- iPhone开发教程之Core Data 常见问题的总结
- 锂电池放空后充不进电_锂电池过度放电后充不进电怎么办
- Android之Only fullscreen opaque activities can request orientation
- 9.proc目录下的文件和目录详解
- win10右键一直转圈_Win10总是自动更新?教你如何关掉自动更新
- Ant-Design-Vue 安装
- docker安装linux安装mysql_怎么启动mysql-linux 怎么安装mysql?怎么在docker搭建mysql8?docker安装mysql...
- VC 获取当前工作目录和执行目录的一些方法
- servlet-api-2.5.jar - jar not loaded
- android下测试方法及junit单元测试框架配置方法
- MVVM设计模式和在WPF中的实现(四) 事件绑定
- cast to pointer from integer of different size [-Wint-to-pointer-cast], cast from ‘void*’ to ‘int’ l
- SSD讲堂三(视频)_SSD_tensorflow_imageio方法_视频检测_附源码
- 【转载】英语动词过去式ed的发音规则
- 中职计算机教师试讲技巧,中职教师资格面试原来是这样考的的!
- vue刘海屏兼容组件
- 如何用Python从海量文本抽取主题