OpenJudge NOI 1.7 17:字符串判等
【题目链接】
OpenJudge NOI 1.7 17:字符串判等
【题目考点】
1. 字符串
2. 大小写转换
'a’的ASCII码是97,'A’的ASCII码是65,同一字母的大小写字母的ASCII码差值为32。小写转大写:减32;大写转小写:加32。
【题解代码】
解法1:将字符串中的字母都转为小写字母,去掉所有空格,而后比较
#include <bits/stdc++.h>
using namespace std;
void proc(char s[])//将s中所有字母都转为小写字母,并去掉所有空格
{int len = strlen(s), j = 0;//j填充位置 for(int i = 0; i < len; ++i){if(s[i] >= 'a' && s[i] <= 'z')s[j++] = s[i];else if(s[i] >= 'A' && s[i] <= 'Z')s[j++] = s[i] + 32;}s[j] = '\0';
}
int main()
{char s1[105], s2[105];cin.getline(s1, 105);cin.getline(s2, 105);proc(s1);proc(s2);if(strcmp(s1, s2) == 0)cout << "YES";elsecout << "NO";return 0;
}
解法2:双指针
i为s1的下标,j为s2的下标。i,j不断向后移动,如果遇到空格则跳过。比较s1[i]和s2[j],如果相同,看后一个字符。如果不同,则两个字符串不同。
#include <bits/stdc++.h>
using namespace std;
int main()
{char s1[105], s2[105];cin.getline(s1, 105);cin.getline(s2, 105);int i = 0, j = 0;while(true){if(s1[i] == ' ')i++;else if(s2[j] == ' ')j++;else if(s1[i] == '\0' || s2[j] == '\0')break;else if(tolower(s1[i]) == tolower(s2[j]))//将s1[i]与s2[j]都转为小写后,看是否相同 i++, j++;elsebreak;}if(s1[i]=='\0' && s2[j]=='\0')//如果i,j都遍历到最后 cout << "YES";elsecout << "NO";return 0;
}
OpenJudge NOI 1.7 17:字符串判等相关推荐
- OpenJudge NOI 1.8 17:最好的草
[题目链接] OpenJudge NOI 1.8 17:最好的草 [题目考点] 1. 二维数组 2. 方向数组 表示上下左右的方向数组: int dir[4][2] = {{0,1},{0,-1},{ ...
- 信息学奥赛一本通 1848:【07NOIP提高组】字符串的展开 | OpenJudge NOI 1.7 35:字符串的展开 | 洛谷 P1098 [NOIP2007 提高组] 字符串的展开
[题目链接] ybt 1848:[07NOIP提高组]字符串的展开 OpenJudge NOI 1.7 35:字符串的展开 洛谷 P1098 [NOIP2007 提高组] 字符串的展开 [题目考点] ...
- OpenJudge NOI 1.7 26:字符串最大跨距
[题目链接] OpenJudge NOI 1.7 26:字符串最大跨距 [题目考点] 1. 字符串 2. string类 string s, s1; s.find(s1):查找s1在s中第一次出现的位 ...
- 信息学奥赛一本通 1145:字符串p型编码 | OpenJudge NOI 1.7 31:字符串p型编码
[题目链接] ybt 1145:字符串p型编码 OpenJudge NOI 1.7 31:字符串p型编码 [题目考点] 1. 字符串处理 [解题思路] 遍历字符串,设置变量curNum表示当前关注的数 ...
- 信息学奥赛一本通 1071:菲波那契数 | OpenJudge NOI 1.5 17:菲波那契数列
[题目链接] ybt 1071:菲波那契数 OpenJudge NOI 1.5 17:菲波那契数列 [题目考点] 1. 斐波那契数列 参考:多种方法求斐波那契数列 [解题思路] 迭代法求斐波那契数列 ...
- 信息学奥赛一本通 1055:判断闰年 | OpenJudge NOI 1.4 17
[题目链接] ybt 1055:判断闰年 OpenJudge NOI 1.4 17:判断闰年 [题目考点] 1. 闰年定义 整百年份中,能被400整除的年份才是闰年 非整百年份中,能被4整除的年份是闰 ...
- 信息学奥赛一本通 1034:计算三角形面积 | OpenJudge NOI 1.3 17
[题目链接] ybt 1034:计算三角形面积 OpenJudge NOI 1.3 17:计算三角形面积 [题目考点] 1. 已知三点求三角形面积公式 已知三点分别为(x1,y1),(x2,y2),( ...
- 【OpenJudge NOI】题解目录
[OpenJudge NOI]题解目录 OJ链接:OpenJudge NOI 以下为本人做的OJ题解 针对每一道题我都会给出题目考点.解题思路.题解代码.必要时也会给出不同的解题方法. 如有不足之处, ...
- OpenJudge NOI 1.7 32:行程长度编码
[题目链接] OpenJudge NOI 1.7 32:行程长度编码 [题目考点] 1. 字符串 [解题思路] 本题与OpenJudge NOI 1.7 31:字符串p型编码基本相同.可以参考上一题的 ...
最新文章
- “Uncaught TypeError: string is not a function”
- 运维企业专题(2)HTTP加速器——Varnish缓存机制后篇(后端服务器集群、负载均衡与CDN推送平台搭建)
- what to do to make a phone call at dorm?
- C++设计模式--状态模式(state)
- 456. 132 Pattern | 456. 132 模式(单调栈)
- glide缩略图存储 android,Glide 显示视频缩略图及遇到的坑
- MATLAB快速拟合二组数据
- javascript中 __proto__与prorotype的理解
- java数组r.id_Android HelloViews Spinner教程R.id和R.array无法解析
- Visio怎么删掉已有部分图形
- 汽车DTC故障码格式解析
- Transformer如何用于大规模图像识别?
- MySQL删除注册表的卸载方式
- Hanoi塔问题图文详解
- 2021信息安全工程师学习笔记(四)
- Go 语言如何自定义 linter(静态检查工具)
- smartgit官方下载地址
- 雨阳打字通 v1.0 发布
- polished css,CSS in JS
- bom更改编号 sap_SAP ERP系统如何通过LSMW批量更改BOM
热门文章
- CentOS 6.4 命令行 安装 VMware Tools
- 记:Ubuntu 14.04 安装32位库支持库失败
- Bruce Eckel最新演讲:调bug就是浪费生命!放弃吧!(附完整PPT)
- 重磅!阿里首次全面公开展示AI布局(附布局图/成绩单/六产业详解)
- 挖槽!堪称神级的Java技术手册火了???(文末送书活动)
- 在创业公司工作是一种什么样的体验?
- 又有程序员把产品经理给打了!
- 新人入职,上午写了一段代码,下午就被开除了
- JimuReport 1.3.7 首个正式版本发布,免费的可视化拖拽报表
- EasyUi之datagrid常见使用