news 2026/10/15 10:46:01

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
小红的密码修改【牛客tracker 每日一题】

小红的密码修改

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

网页链接

牛客tracker

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

题目描述

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

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

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

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

输入描述:

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

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

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

输出描述:

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

示例1

输入:

1 12345aB.

输出:

378

解题思路

输入的字符串为合法密码(长度8 − 16 8-168−16,包含大写字母、小写字母、数字、指定四种特殊符号各至少一个),首先统计这四类字符的数量;定义数组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 tt达1 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;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/15 11:30:15

GTH系列模组介绍

Toyo&#xff08;东佑达&#xff09;GTH 系列是一款轨道内嵌式丝杆模组&#xff0c;是该品牌经典 ETH 系列的升级款&#xff0c;包含 GTH4、GTH5、GTH8、GTH12 等多个单轴型号&#xff0c;还有 GTH4D、GTH5D 等双滑座型号TOYO东佑达。其凭借高精度、高刚性等优势&#xff0c;广…

作者头像 李华
网站建设 2026/10/15 18:30:28

BlenderMCP革命性AI辅助3D建模:从零到专业场景的智能创作指南

BlenderMCP革命性AI辅助3D建模&#xff1a;从零到专业场景的智能创作指南 【免费下载链接】blender-mcp 项目地址: https://gitcode.com/GitHub_Trending/bl/blender-mcp 引言&#xff1a;AI如何重塑3D建模工作流&#xff1f; 你是否曾经面对空白Blender场景时感到无从…

作者头像 李华
网站建设 2026/10/15 5:09:12

JavaScript进阶(三):DOM事件

文章目录一.事件核心概念二.常见事件类型(按场景分类)1.鼠标事件2.键盘事件3.表单事件4.页面 / 窗口事件5.触摸事件(移动端)三.事件绑定方式(优先级:推荐 ③ > ② > ①)1.行内绑定(原生 HTML,不推荐)2.DOM 属性绑定(简单场景可用)3.addEventListener(推荐,标准方式)四.事…

作者头像 李华
网站建设 2026/10/15 6:27:10

终极Mac观影神器:打造你的私人美剧影院

终极Mac观影神器&#xff1a;打造你的私人美剧影院 【免费下载链接】iMeiJu_Mac 爱美剧Mac客户端 项目地址: https://gitcode.com/gh_mirrors/im/iMeiJu_Mac 还在为找美剧资源而烦恼吗&#xff1f;在各大视频平台间频繁切换&#xff0c;只为找到心仪的那一部&#xff1f…

作者头像 李华
网站建设 2026/10/15 0:27:46

Linux下通过命令行实现防火墙操作

在Linux系统上管理防火墙&#xff0c;ufw (Uncomplicated Firewall) 是一个非常流行且易于使用的工具&#xff0c;它是 iptables 的一个前端。 &#x1f527; UFW的安装 ufw 通常预装在基于Debian的系统&#xff08;如Ubuntu&#xff09;上。如果你的系统没有&#xff0c;可以使…

作者头像 李华