C++学习之路 | PTA乙级—— 1052 卖个萌 (20 分)(精简)
1052 卖个萌 (20 分)
萌萌哒表情符号通常由“手”、“眼”、“口”三个主要部分组成。简单起见,我们假设一个表情符号是按下列格式输出的:
左手[右手]
现给出可选用的符号集合,请你按用户的要求输出表情。
输入格式:
输入首先在前三行顺序对应给出手、眼、口的可选符号集。每个符号括在一对方括号 []内。题目保证每个集合都至少有一个符号,并不超过 10 个符号;每个符号包含 1 到 4 个非空字符。
之后一行给出一个正整数 K,为用户请求的个数。随后 K 行,每行给出一个用户的符号选择,顺序为左手、左眼、口、右眼、右手——这里只给出符号在相应集合中的序号(从 1 开始),数字间以空格分隔。
输出格式:
对每个用户请求,在一行中输出生成的表情。若用户选择的序号不存在,则输出 Are you kidding me? @/@。
输入样例:
[╮][╭][o][][/] [<][>]
[╯][╰][^][-][=][>][<][@][⊙]
[Д][▽][_][ε][^] …
4
1 1 2 2 2
6 8 1 5 5
3 3 4 3 3
2 10 3 9 3
输出样例:
╮(╯▽╰)╭
<(@Д=)/~
o(ε)o
Are you kidding me? @/@
#include <iostream>
#include <vector>
#include<string>
using namespace std;
int main() {vector<vector<string> > v;for (int i = 0; i < 3; i++) {string s;getline(cin, s);vector<string> row;int j = 0, k = 0;while (j < s.length()) {if (s[j] == '[') {while (k++ < s.length()){if (s[k] == ']') {row.push_back(s.substr(j + 1, k - j - 1));break;}}}j++;}v.push_back(row);}int n;cin >> n;for (int i = 0; i < n; i++) {int a, b, c, d, e;cin >> a >> b >> c >> d >> e;if (a > v[0].size() || b > v[1].size() || c > v[2].size() || d > v[1].size() || e > v[0].size() || a < 1 || b < 1 || c < 1 || d < 1 || e < 1) {cout << "Are you kidding me? @\\/@" << endl;continue;}cout << v[0][a - 1] << "(" << v[1][b - 1] << v[2][c - 1] << v[1][d - 1] << ")" << v[0][e - 1] << endl;}return 0;
}
C++学习之路 | PTA乙级—— 1052 卖个萌 (20 分)(精简)相关推荐
- C++学习之路 | PTA乙级—— 1093 字符串A+B (20 分)(精简)
1093 字符串A+B (20 分) 给定两个字符串 A 和 B,本题要求你输出 A+B,即两个字符串的并集.要求先输出 A,再输出 B,但重复的字符必须被剔除. 输入格式: 输入在两行中分别给出 A ...
- C++学习之路 | PTA乙级——1092 最好吃的月饼 (20 分)(精简)
1092 最好吃的月饼 (20 分). 月饼是久负盛名的中国传统糕点之一,自唐朝以来,已经发展出几百品种. 若想评比出一种"最好吃"的月饼,那势必在吃货界引发一场腥风血雨-- 在这 ...
- C++学习之路 | PTA乙级—— 1074 宇宙无敌加法器 (20 分)(精简)
1074 宇宙无敌加法器 (20 分) 地球人习惯使用十进制数,并且默认一个数字的每一位都是十进制的.而在 PAT 星人开挂的世界里,每个数字的每一位都是不同进制的,这种神奇的数字称为"PA ...
- C++学习之路 | PTA乙级—— 1059 C语言竞赛 (20 分)(精简)
1059 C语言竞赛 (20 分) C 语言竞赛是浙江大学计算机学院主持的一个欢乐的竞赛.既然竞赛主旨是为了好玩,颁奖规则也就制定得很滑稽: 0.冠军将赢得一份"神秘大奖"(比如很 ...
- C++学习之路 | PTA乙级—— 1024 科学计数法 (20 分)(精简)
1024 科学计数法 (20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数 ...
- C++学习之路 | PTA乙级—— 1033 旧键盘打字 (20 分)(精简)
1033 旧键盘打字 (20 分) 旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现.现在给出应该输入的一段文字.以及坏掉的那些键,打出的结果文字会是怎样? 输入格式: 输入在 2 行 ...
- C++学习之路 | PTA乙级—— 1032 挖掘机技术哪家强 (20 分)(精简)
1032 挖掘机技术哪家强 (20 分) 为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛.现请你根据比赛结果统计出技术最强的那个学校. 输入格式: 输入在第 1 行给出不超过 1 ...
- C++学习之路 | PTA乙级—— 1023 组个最小数 (20分)(精简)
1023 组个最小数 (20分) 给定数字 0-9 各若干个.你可以以任意顺序排列这些数字,但必须全部使用.目标是使得最后得到的数尽可能小(注意 0 不能做首位).例如:给定两个 0,两个 1,三个 ...
- C++学习之路 | PTA乙级—— 1018 锤子剪刀布 (20分)(精简)
1018 锤子剪刀布 (20分) 大家应该都会玩"锤子剪刀布"的游戏:两人同时给出手势,胜负规则如图所示: FigCJB.jpg 现给出两人的交锋记录,请统计双方的胜.平.负次数, ...
最新文章
- WindowsServer2012史记7-茴香豆的五种写法和四种”显示计算机”的方法
- 人力资源大数据解决方案
- Qt CMake命令参考
- SQL Server通过动态视图里查找阻塞超过30秒的会话
- VMware Workstation Pro 16 安装教程
- 从jHiccup开始
- C++Primer学习笔记:第5章 语句
- 实例48:python
- poj 3101Astronomy(圆周追击+分数最小公倍数)
- 存储桶列表访问权限_十分钟从入门到精通(上)——OBS权限配置
- 内存对齐 | 原来字段顺序还能影响结构体占用的内存空间
- 微信小程序,自动滑动到页面底部功能
- 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第3节 线程同步机制_1_线程安全问题的概述...
- PHP 动态设置数组索引的值
- poi向word插入图片_【工作应用】Java根据word模板动态生成word文档(SpringBoot项目)...
- 软件项目管理案例教程(第3版)复习内容
- cmd 根据计算机名查ip地址_教你怎么查看本机IP地址
- 阿里巴巴监管控一体化运维|阿里巴巴DevOps实践指南
- 多个excel工作簿合并_你还在使用复制粘贴合并表格?一个公式搞定Excel多工作簿合并...
- 烤仔建工 | 元宇宙开门红就是中国红!