当前位置: 首页 > news >正文

小红的密码修改【牛客tracker 每日一题】

小红的密码修改

时间限制:1秒 空间限制:256M

网页链接

牛客tracker

牛客tracker & 每日一题,完成每日打卡,即可获得牛币。获得相应数量的牛币,能在【牛币兑换中心】,换取相应奖品!助力每日有题做,丰盈牛币日益多!

题目描述

已知合法的密码有以下要求:

  1. 长度在8 8816 1616之间。
  2. 必须包含大写字母、小写字母、数字、特殊符号这四种字符。其中特殊符号只能是英文逗号、英文句号、英文问号和英文感叹号这四种。

小红准备修改她目前的密码,但她最多只会修改一个字符,因为修改多了小红就容易忘记她的密码。修改后需要满足是合法的密码。

小红想知道,她一共有多少种修改的方式?共有t tt次询问。

输入描述:

第一行输入一个正整数t tt,代表询问的次数。

接下来的t tt行,每行输入一个字符串。保证输入的字符串是一个合法的密码。

1 ≤ t ≤ 1 0 5 1≤t≤10^51t105

输出描述:

输出t tt行,每行输出一个整数,代表修改的方案数。

示例1

输入:

1 12345aB.

输出:

378

解题思路

输入的字符串为合法密码(长度8 − 16 8-16816,包含大写字母、小写字母、数字、指定四种特殊符号各至少一个),首先统计这四类字符的数量;定义数组p = 25 , 25 , 9 , 3 p={25,25,9,3}p=25,25,9,3,分别对应每类字符仅存1 11个时,替换该类字符为同类型其他字符的可选数(避免替换后该类字符消失,导致密码不合法);对于每类字符,若数量为1 11则累加p [ i ] p[i]p[i]到答案,否则累加该类字符数量乘以65 6565(所有合法字符的总数,此时替换任意合法字符都不会造成类别缺失);最终累加的总和即为最多修改一个字符的合法方案数,该方法单次处理字符串的时间复杂度为O ( l e n ( s ) ) O(len(s))O(len(s)),适配t tt1 e 5 1e51e5的规模,高效计算出结果。

代码内容

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;typedefpair<ll,ll>pii;constll p=1e9+7;constll N=1e5+10;voidsolve(){string s;cin>>s;vector<ll>c(4,0),p={25,25,9,3};for(auto&ch:s){if(isupper(ch))c[0]++;// 当是大写字母时为真elseif(islower(ch))c[1]++;// 当是小写字母时为真elseif(isdigit(ch))c[2]++;// 当是数字是为真elsec[3]++;}ll ans=0;for(ll i=0;i<4;i++){if(c[i]==1)ans+=p[i];elseans+=c[i]*65;}cout<<ans<<endl;}intmain(){ll t;cin>>t;while(t--)solve();return0;}
http://www.cnnetsun.cn/news/22110.html

相关文章:

  • 何为前端工程化?一文给你说透前端工程化,收藏这篇就够了
  • 免费学习资源|谷歌 5天AI Agents 强化课程|十一月开课
  • 前端及其技术栈,零基础入门到精通,收藏这篇就够了
  • vscode 前端常用插件推荐,零基础入门到精通,收藏这篇就够了
  • 前端牛马 被优化,二选一
  • 社交媒体用户行为特征与发布时间的关联性
  • 微服务编排引擎Conductor:源码编译与定制化开发实战手册
  • WINCC实现手机 APP 远程监控及短信报警方案
  • 《Python学习手册》第1章 Python概述
  • 西南民族大学软件工程25级研究生赴华清远见成都中心开启元宇宙实训之旅
  • Obsidian图像工具包:终极图片管理与编辑指南
  • 自主高性价比、高精度车规级姿态感知、倾角感知模组-应用消费级无人机、自动驾驶、机器人、智能制造、基础设施、智能穿戴等
  • ComfyUI智能修复技术:图像处理的革命性突破
  • 碳硅协同:人工智能作为碳基生命合作伙伴的终极形态分析
  • 小公司效率低、管理乱?一张《四维照妖镜》,照出你的“效率黑洞”
  • 拒绝无意义刷屏,打造高效率热点追踪,极空间部署『TrendRadar』
  • 3步精通JSON对比工具:从新手到高手的实战指南
  • lombok的几个核心注解是什么?
  • Qwen3-VL-30B-A3B-Thinking-FP8多模态大模型实战指南:从技术突破到产业落地
  • 庄散资金主买卖差、散买卖差
  • AI办公工具选型指南:从文档到PPT,这些工具如何提升效率?
  • Web 漏洞扫描入门没头绪?2025 十大工具(详细拆解),零基础也能从入门到精通!
  • Morisawa BIZ UDGothic 终极字体配置指南:提升文档专业度的免费利器
  • Markn:轻量级Markdown查看器的终极指南——提升文档阅读体验
  • 小白必看!大模型入门指南
  • 一篇图文彻底搞懂什么是AI Agent
  • Kubernetes备份工具API实战指南:从入门到精通
  • 18、Linux数据搜索、提取与归档全解析
  • 19、Linux 文件操作与编辑全解析
  • 日薪2000+的 “ 护网行动 ” 到底是什么?