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…

  • 13mins一遍过
  • 扫一遍抽奖,维护se判断是否曾获奖,ans记录答案
#include<iostream>
#include<set>
#include<string>
#include<vector>
using namespace std;
string name[1010];
int main(){int m, n, s;cin>>m>>n>>s;for(int i = 1; i <= m; i++)cin>>name[i];set<string>se; vector<string>ans;for(int i = s; i <= m; i+=n){while(se.count(name[i]))i++;se.insert(name[i]);ans.push_back(name[i]);}if(se.size()!=0){for(int i = 0; i < ans.size(); i++)cout<<ans[i]<<"\n";}else cout<<"Keep going...";return 0;
}

【PAT乙】1069 微博转发抽奖 (20分) set相关推荐

  1. PAT 乙级 1069 微博转发抽奖 (20 分)

    题目:PAT 乙级 1069 微博转发抽奖 (20 分) 经验总结: 可以建立一个set,用于存放中奖用户.若set中有此用户,代表此用户已中奖,奖品顺延. C++代码: #include<bi ...

  2. PAT乙级 | 1069 微博转发抽奖 (20分)

    小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一行给出三个正整数 M(≤ 1000). ...

  3. PAT乙级1069微博转发抽奖 20(分)

    题目 小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一行给出三个正整数 M( ≤ \l ...

  4. PAT乙级 1069 微博转发抽奖 (20 分) C语言

    一.题目 二.源代码 #include<stdio.h> #include<string.h> struct User {char n[21]; }; int main() { ...

  5. 1069 微博转发抽奖 (20分)

    1069 微博转发抽奖 (20分) 小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一行 ...

  6. 1069 微博转发抽奖 (20 分)

    1069 微博转发抽奖 (20 分) 小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一 ...

  7. 1069 微博转发抽奖 (20 分)(算法分析+代码实现)

    1069 微博转发抽奖 (20 分) 题目链接 算法分析 用flag记录是否输出过获奖人名字 用map类型take记录某人是否拿走过奖品 用cnt记录间隔人数 然后按要求输出就好. 代码实现 #inc ...

  8. PAT 乙 1069 微博转发抽奖

    1069 微博转发抽奖 (20 分) 小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一 ...

  9. 【最简便解法】1069 微博转发抽奖 (20分)

    立志用更少的代码做更高效的表达 Pat乙级最优化代码+题解+分析汇总-->传送门 小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你 ...

最新文章

  1. 洛谷 P5019 铺设道路(差分)
  2. 李开复对话彭特兰:AI 不是单打独斗,应避免 AI 冷战!
  3. mysql转oracle注意事项
  4. 20100422.C#.const VS readonly
  5. python质数n以内_用Python寻找前n个质数
  6. 算法问题---两艘船是否有最大承载量
  7. D3DLOCK写纹理遇到的问题
  8. php 纯文本输出_关于PHP的语法介绍,新手必看
  9. jmeter JDBC Request
  10. 阿里云三代掌门人首次同台,共叙云计算十年风云路!
  11. openstack版本历史
  12. dubbo源码之SPI机制源码
  13. dev-cpp linux,QT4+Devcpp开发环境搭建(参照网上资料整理)
  14. 安恒堡垒机如何启用Radius双因素/双因子(2FA)身份认证
  15. 神奇的 SQL 之别样的写法
  16. android mcc 模拟,Android 读取MCC, MNC
  17. C#开发实战视频教程_基于多线程C#开发QQ农场
  18. 印章与印鉴的区别_篆刻与印章有区别
  19. C语言足球比赛6场,一场激烈的足球赛作文600字
  20. 进制转换和函数的定义

热门文章

  1. Analysis of variance(ANOVA)
  2. 辨异 —— 有两人生日在同一天、只有两人生日在同一天
  3. Google 搜索命令
  4. hadoop 命令行相关操作
  5. onvif协议_【通用语言】ONVIF协议的秘密
  6. 三层架构学习的困难_TCP/IP协议栈-之-三层交换技术
  7. python是什么意思怎么读-python怎么读(python怎么读中文)
  8. python从入门到精通需要多久-Python从入门到精通只需要一个月就够了!
  9. python画折线图-python绘制简单折线图代码示例
  10. python画简便的图-特征锦囊:常用的统计图在Python里怎么画?