PAT (Basic Level) Practice_1039 到底买不买
小红想买些珠子做一串自己喜欢的珠串。卖珠子的摊主有很多串五颜六色的珠串,但是不肯把任何一串拆散了卖。于是小红要你帮忙判断一下,某串珠子里是否包含了全部自己想要的珠子?如果是,那么告诉她有多少多余的珠子;如果不是,那么告诉她缺了多少珠子。
为方便起见,我们用[0-9]、[a-z]、[A-Z]范围内的字符来表示颜色。例如在图1中,第3串是小红想做的珠串;那么第1串可以买,因为包含了全部她想要的珠子,还多了8颗不需要的珠子;第2串不能买,因为没有黑色珠子,并且少了一颗红色的珠子。
图 1
输入格式:
每个输入包含 1 个测试用例。每个测试用例分别在 2 行中先后给出摊主的珠串和小红想做的珠串,两串都不超过 1000 个珠子。
输出格式:
如果可以买,则在一行中输出 Yes
以及有多少多余的珠子;如果不可以买,则在一行中输出 No
以及缺了多少珠子。其间以 1 个空格分隔。
输入样例 1:
ppRYYGrrYBR2258
YrR8RrY
输出样例 1:
Yes 8
输入样例 2:
ppRYYGrrYB225
YrR8RrY
输出样例 2:
No 2
AC代码
/** @Descripttion: * @version: * @Author: edisonhuang* @Date: 2020-04-03 15:50:52* @LastEditors: edisonhuang* @LastEditTime: 2020-04-03 16:17:22*/
#include <iostream>
using namespace std;int main()
{int lack = 0;string want,offer;cin >> offer; //摊主有的cin >> want; //小红想要的for (int i = 0; i < want.length(); i++){bool flag = false;for (int j = 0; j < offer.length(); j++){//找到了需要的if (want[i] == offer[j]){//把offer中的j给删除offer.erase(j,1);flag = true;break;} }//没有找到,则lack++if (!flag){lack++;}}if (lack == 0){cout << "Yes " << offer.length();}else{cout << "No " << lack ;}return 0;
}
PAT (Basic Level) Practice_1039 到底买不买相关推荐
- PAT (Basic Level) 1039 到底买不买(模拟)
题目链接:点击查看 题目大意:给出两个字符串a和b,问b是否能完全包含a,意思就是b中的所有字母在a中能否都找到一个对应的字母 题目分析:这个题一开始想复杂了,可以先开一个稍大点的vis数组用来记录个 ...
- 【题解】PAT (Basic Level) Practice (中文)
互联网行业的小白,写博客的目的是为了记录自己的学习过程.对自己学习中所犯的错误做一个总结.由于水平有限,博客中难免会有一些错误出现,有纰漏之处恳请各位大佬不吝赐教! PAT Basic Level P ...
- PAT (Basic Level) Practise (中文)-1025. 反转链表 (25)
PAT (Basic Level) Practise (中文)-1025. 反转链表 (25) http://www.patest.cn/contests/pat-b-practise/1025 ...
- PAT (Basic Level) Practise (中文)-1034. 有理数四则运算(20)
PAT (Basic Level) Practise (中文)-1034. 有理数四则运算(20) http://www.patest.cn/contests/pat-b-practise/1034 ...
- PAT basic level 答案+解题思路+难点 (个人刷题记录)
PAT basic level 使用语言:C++ 仅记录一下自己刷题过程的心得体会 永远保持更新(期待更好的解法) 可能有些题没有(那就是我还没做出来,以后会更的!) 欢迎大家与我讨论交流√ 题目序列 ...
- 可优化-PAT (Basic Level) Practice Python解法 1026 程序运行时间(时间进位/四舍五入Tobe解决)
可优化-PAT (Basic Level) Practice Python解法 1026 程序运行时间(时间进位/四舍五入Tobe解决) c1, c2 = map(int,input().split( ...
- 1001 害死人不偿命的(3n+1)猜想 (15分) PAT (Basic Level) Practice (中文)C语言版
PAT (Basic Level) Practice (中文) 1001 害死人不偿命的(3n+1)猜想 (15分) 卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一 ...
- 卡拉兹(Callatz)猜想,PAT(Basic Level) Practise NO.1001
PAT(Basic Level) Practise NO.1001 卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半. 这样 ...
- PAT (Basic Level) Practice (中文)1095 解码PAT准考证 (25 分)
PAT (Basic Level) Practice (中文)1095 解码PAT准考证 (25 分) PAT 准考证号由 4 部分组成: 第 1 位是级别,即T代表顶级:A代表甲级:B代表乙级: 第 ...
最新文章
- grep 使用 nsr 实现查找
- Nginx 代理服务的配置说明
- MinGW编译wxWidget
- vue组件间函数调用
- CENTOS 7 踢用户_CentOS服务器及MySQL数据库性能测试-乐搏软件测试
- java 原子类能做什么_死磕 java原子类之终结篇(面试题)
- 微软重拳出击:盗版 Windows 将无处遁形!
- Mysql 主从复制线程的等待时间问题
- 安装库_python的库的安装
- 手动实现 NSTabViewController 的 Rect Transition 及 Propagate Title-b
- 程序员面试金典——18.7最长合成字符串
- 前端常用功能记录(一)
- 【老生谈算法】matlab实现傅里叶变换算法源码——傅里叶变换
- 地图制作:Google Earth Pro的下载及功能介绍(详细介绍)(上)
- zte d90 java_zte d90 驱动程序(最新更新)尼康d90驱动
- 荣耀继承者android,荣耀继承者后期阵容推荐,一套万金油阵容介绍给大家
- 人脸识别服务器端软件设计(delphi XE10)
- 如何提高自己代码的可读性?
- 双十一适合买什么,缓解失眠助眠好物推荐榜
- 考研英语计算机翻译,2019考研英语翻译每日一句:数字化时代