【牛客】HJ87 密码强度等级 CM62 井字棋

题目一:密码强度等级

题目链接:密码强度等级_牛客题霸_牛客网 (nowcoder.com)

本题主要考察C语言中逻辑分支语句,基本语句以及对各种特殊字符 ,ASCII值以及条件表达中的逻辑运算符关系运算符各自功能的理解,以及基本使用,根据不同的条件,进入不同的分支,统计求和

解题思路:

1、先统计大小写字母,数字,以及特殊字符的个数

2、再对题目给的限定条件累加求和

代码实现:

#include<iostream>
using namespace std;int string_count( const string& str)
{int digit=0,symbol=0;int lower=0,upper=0,character=0;int sum=0;for(auto ch:str){if(ch>='a'&&ch<='z'){lower++;character++;}else if(ch>='A'&&ch<='Z'){upper++;character++;}else if(ch>='0'&&ch<='9')digit++;if((ch>=0x21&&ch<=0x2F)||(ch>=0x3A&&ch<=0x40)||(ch>=0x5B&&ch<=0x60)||(ch>=0x7B&&ch<=0x7E))symbol++;}//str字符长度分数if(str.size()>=8)sum+=25;else if (str.size()>=5&&str.size()<=7)sum+=10;else if (str.size()<=4)sum+=5;//计算字母分数if(lower>0&&upper>0)sum+=20;else if (lower==character||upper==character)sum+=10;//计算数字分数if(digit>1)sum+=20;else if (digit==1)sum+=10;//计算字符分数if(symbol>1)sum+=25;else if (symbol==1)sum+=10;if(lower>0&&upper>0&&digit>0&&symbol>0)sum+=5;else if((lower>0||upper>0)&&digit>0&&symbol>0)sum+=3;else if((lower>0||upper>0)&&digit>0&&symbol==0)sum+=2;return sum;
}
int main()
{string str;while(cin>>str){int score=string_count(str);if(score>=90){cout<<"VERY_SECURE"<<endl;}else if(score>=80){cout<<"SECURE"<<endl;}else if(score>=70) {cout<<"VERY_STRONG"<<endl;}else if(score>=60) {cout<<"STRONG"<<endl;}else if(score>=50) {cout<<"AVERAGE"<<endl;}else if(score>=25) {cout<<"WEAK"<<endl;}else if(score>=0) {cout<<"VERY_WEAK"<<endl;}}
}

题目二:井字棋

题目链接:井字棋_牛客题霸_牛客网 (nowcoder.com)

题目描述:

解题思路:

玩家棋子为1

整个一行相加结果为列数 就获胜了

整个一列相加结果为行数 就获胜了

正斜 board[row][row]

副斜board[row][col-1-i]

 代码实现:

class Board {
public:bool checkWon(vector<vector<int> > board) {// write code hereint row=board.size();int col=board[0].size();//行连成排for(int i=0;i<row;i++){int sum=0;for(int j=0;j<col;j++){sum+=board[i][j];}if(sum==col) return true;}//列连成排for(int i=0;i<col;i++){int sum=0;for(int j=0;j<row;j++){sum+=board[j][i];}if(sum==row) return true;}//正斜成排int sum=0;for(int i=0;i<row;i++){sum+=board[i][i];}if(sum==row)  return true;//副斜成排sum=0;for(int i=0;i<row;i++){sum+=board[i][col-1-i];}if(sum==row) return true;return false;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/522947.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站开发之旅:从概念到实现

在我成为一名专业的网站开发者的过程中&#xff0c;我有幸参与了多个激动人心的项目。其中&#xff0c;一个我印象尤为深刻的经历是&#xff0c;开发一个名为“文案推荐网”的主题网站&#xff08;www.zimeiti.love&#xff09;。这个项目不仅让我深入了解了网站开发的各个方面…

#欢迎各位学者,研究员,单位前来参会,一同交流经验技术,探讨行业领域发展方向,组队参会更优惠!

#欢迎各位学者&#xff0c;研究员&#xff0c;单位前来参会&#xff0c;一同交流经验技术&#xff0c;探讨行业领域发展方向&#xff0c;组队参会更优惠&#xff01; 第六届下一代数据驱动网络国际学术会议&#xff08;NGDN 2024&#xff09; The Sixth International Confere…

VR历史建筑漫游介绍|VR主题馆加盟

虚拟现实&#xff08;VR&#xff09;技术为用户提供了身临其境的沉浸式体验&#xff0c;使得历史建筑的漫游和介绍更加生动和丰富。通过VR技术&#xff0c;用户可以在不同的时间和空间中穿梭&#xff0c;感受历史建筑的魅力&#xff0c;了解其背后的故事和文化意义。 1. 沉浸式…

C++vector的使用方法

文章目录 一、vector的介绍1. 文档链接2. 简要介绍 二、vector的使用1.vector的定义&#xff08;1&#xff09;构造函数&#xff08;2&#xff09;拷贝构造函数&#xff08;2&#xff09;赋值重载 2. vector 增删查改&#xff08;1&#xff09;operator []&#xff08;2&#x…

C++ 智能指针深度剖析

文章目录 1. 前言2. 为什么需要智能指针&#xff1f;3. 内存泄漏3.1 内存泄漏的概念及危害3.2 内存泄漏的分类3.3 如何检测内存泄漏3.4 如何避免内存泄漏 4. 智能指针的使用及原理4.1 RAII思想4.2 智能指针的原理4.3 C智能指针发展历史4.4 std::auto_ptr4.5 std::unique_ptr4.6…

746. 使用最小花费爬楼梯 (Swift版本)

题目 给你一个整数数组 cost&#xff0c;其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用&#xff0c;即可选择向上爬一个或者两个台阶。 你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。 请你计算并返回达到楼梯顶部的最低花费。 限制条件 2…

一文扫荡,12个可视化图表js库,收藏备用。

hello&#xff0c;我是贝格前端工场&#xff0c;可视化图表在web前端开发中经常碰到&#xff0c;是不是很疑惑这些炫酷的图表是怎么实现的&#xff0c;其实是通过js库开发的&#xff0c;本文带来12个javascript库的介绍&#xff0c;欢迎关注我&#xff0c;阅读精彩内容。 一、什…

园区内部无线语音通信的解决方案

在一些园区、办公环境和厂矿场所&#xff0c;内部无线语音通信功能的需求日益凸显&#xff0c;尤其对于人员流动和移动办公的场景。这种需求着重强调了无线通信的便捷性和内部部署环境的适应性。 传统的内部通信系统中&#xff0c;有线通信能力占据主导地位&#xff0c;如集团…

嵌入式学习-FreeRTOS-Day3

嵌入式学习-FreeRTOS-Day3 一、思维导图 二、 1.FreeRTOS任务的调度算法及实现 默认是抢占式调度时间片轮询 1.抢占式调度&#xff1a;任务优先级高的可以打断任务优先级低的执行&#xff08;适用于不同优先级&#xff09; 2.时间片轮转&#xff1a;每一个任务拥有相同的时…

一张草图直接生成视频游戏,谷歌推出生成交互大模型

谷歌DeepMind的研究人员推出了&#xff0c;首个无需数据标记、无监督训练的生成交互模型——Generative Interactive Environments&#xff0c;简称“Genie”。 Genie有110亿参数&#xff0c;可以根据图像、真实照片甚至草图&#xff0c;就能生成各种可控制动作的视频游戏。Ge…

uniapp实现---类似购物车全选

目录 一、实现思路 二、实现步骤 ①view部分展示 ②JavaScript 内容 ③css中样式展示 三、效果展示 四、小结 注意事项 一、实现思路 点击商家复选框&#xff0c;可选中当前商家下的所有商品。点击全选&#xff0c;选中全部商家的商品 添加单个多选框&#xff0c;在将多选…

活动会议如何做好线上宣传?媒体直播怎么做?

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 活动会议的线上宣传和媒体直播是提高活动曝光度和参与度的重要手段。以下是一些建议&#xff0c;以帮助您做好线上宣传和媒体直播&#xff1a; 一、线上宣传策略 制定宣传计划&#xff…