立志用更少的代码做更高效的表达


Pat乙级最优化代码+题解+分析汇总——>传送门


当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死。本题就请你实现这个小功能。

输入格式:
输入在第一行给出一个密码(长度不超过 20 的、不包含空格、Tab、回车的非空字符串)和一个正整数 N(≤ 10),分别是正确的密码和系统允许尝试的次数。随后每行给出一个以回车结束的非空字符串,是用户尝试输入的密码。输入保证至少有一次尝试。当读到一行只有单个 # 字符时,输入结束,并且这一行不是用户的输入。

输出格式:
对用户的每个输入,如果是正确的密码且尝试次数不超过 N,则在一行中输出 Welcome in,并结束程序;如果是错误的,则在一行中按格式输出 Wrong password: 用户输入的错误密码;当错误尝试达到 N 次时,再输出一行 Account locked,并结束程序。

输入样例 1:
Correct%pw 3
correct%pw
Correct@PW
whatisthepassword!
Correct%pw
#
输出样例 1:
Wrong password: correct%pw
Wrong password: Correct@PW
Wrong password: whatisthepassword!
Account locked

输入样例 2:
cool@gplt 3
coolman@gplt
coollady@gplt
cool@gplt
try again
#
输出样例 2:
Wrong password: coolman@gplt
Wrong password: coollady@gplt
Welcome in


关于测试点2和测试点5

题中只说正确的密码不包含空格、TAB等特殊符号, 但没说输入的密码中没有。

在样例2中已经有了提示,一个输入的密码为try again。对于这种字符串, 只能用getline处理输入, 这也是PAT题特有的一个坑点。


代码

#include<bits/stdc++.h>
using namespace std;
int main() {string pass; int n; cin >> pass >> n;string input;int num = 0; getchar();while(getline(cin, input) && input!="#") {if(input != pass) cout << "Wrong password: " << input << '\n';else {cout << "Welcome in" << '\n'; break;}if(++num >= n) {cout << "Account locked" << '\n'; break;}  }return 0;
}

耗时


每日一句

要活成两种样子,发光和不发光。不发光的时候,都是在为发光做准备~

【测试点分析】1067 试密码 (20分)_20行代码AC相关推荐

  1. 【测试点分析】1088 三人行 (20分)_29行代码AC

    立志用最少的代码做最高效的表达 PAT乙级最优题解-->传送门 子曰:"三人行,必有我师焉.择其善者而从之,其不善者而改之." 本题给定甲.乙.丙三个人的能力值关系为:甲的能 ...

  2. 【详细分析】1023 Have Fun with Numbers (20 分)_20行代码AC

    立志用最少的代码做最高效的表达 PAT甲级最优题解-->传送门 Notice that the number 123456789 is a 9-digit number consisting e ...

  3. 【测试点分析】1010 Radix (25 分)_37行代码AC

    立志用最少的代码做最高效的表达 PAT甲级最优题解-->传送门 Given a pair of positive integers, for example, 6 and 110, can th ...

  4. 1027 Colors in Mars (20 分)_20行代码AC

    立志用最少的代码做最高效的表达 PAT甲级最优题解-->传送门 People in Mars represent the colors in their computers in a simil ...

  5. 1081 Rational Sum (20 分)_22行代码AC

    立志用最少的代码做最高效的表达 PAT甲级最优题解-->传送门 Given N rational numbers in the form numerator/denominator, you a ...

  6. 1067 试密码 (20 分)之测试点4分析

    原题如下: 当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死.本题就请你实现这个小功能. 输入格式: 输入在第一行给出一个密码(长度不超过 20 的. ...

  7. 【PAT乙级】1067 试密码 (20 分)

    题目地址 #include<cstdio> #include<iostream> #include<vector> #include<string> u ...

  8. 【测试点分析】1072 开学寄语 (20分)_42行代码AC

    立志用更少的代码做更高效的表达 Pat乙级最优化代码+题解+分析汇总-->传送门 下图是上海某校的新学期开学寄语:天将降大任于斯人也,必先删其微博,卸其 QQ,封其电脑,夺其手机,收其 ipad ...

  9. 测试点分析:1048 数字加密 (20分)_16行代码AC

    立志用更少的代码做更高效的表达 Pat乙级最优化代码+题解+分析汇总-->传送门 本题要求实现一种数字加密方法.首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位 ...

最新文章

  1. 让大规模深度学习训练线性加速、性能无损,基于BMUF的Adam优化器并行化实践...
  2. 成都网络推广告诉大家网站抓取量要如何解决?
  3. 面试官:Maven 的这 7 个问题你思考过没有?
  4. python编程思维导图_用来梳理 Python 编程核心知识15张思维导图
  5. C#编程(三十五)----------foreach和yield
  6. MFC绘图的几种方法
  7. git分支feature和hotfix分支
  8. 12.JAVA基本数据类型
  9. C++STL笔记(八):set和multiset详解
  10. numpy 线性代数
  11. 拿着 22 万美元年薪,混得还不如实习生?
  12. java基本数据类型范围
  13. python开发一个PC屏幕监控软件(2000块的道德底线)
  14. win10复制粘贴不能用解决方法汇总
  15. SyntaxError报错成功解决
  16. 小程序源码:经典语录大全微信小程序源码下载多种分类语录-多玩法安装简单
  17. Android开发项目--跑腿APP-跑儿
  18. 如何有效地阅读技术书籍
  19. DevOps之五Jenkins
  20. springboot问题排解

热门文章

  1. 这代码写的跟狗屎一样!怎么优化?
  2. 力扣- - 最短回文串(KMP算法)
  3. 设定游戏背景和英雄登场
  4. 基于LZ77算法的文件压缩铺垫
  5. 剑指offer之16-20题解
  6. 从萌新玩家到游戏开发,IEG首位女专家的升级之路
  7. ​“免疫杀手” Deep X-RAY
  8. 微信「看一看」 推荐排序技术揭秘
  9. Kafka,它为什么速度会这么快?
  10. 发布新的个人博客地址和微信公众号