自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 信息学奥赛一本通 1143:最长最短单词 | OpenJudge NOI 1.7 25

【题目链接】ybt 1143:最长最短单词OpenJudge NOI 1.7 25:最长最短单词【题目考点】1. 字符串处理【解题思路】思路1:将字符串分解为多个单词,而后求出各个单词的长度,再找出最长和最短的单词。思路2:遍历字符串,同时构造单词。遇到空格或逗号时完成构造一个单词,而后判断该单词是否是已知的最长或最短单词,记下最长或最短单词。【题解代码】解法1:用字符数组,用二维数组保存多个单词将字符串拆解为多个单词,用二维数组保存。遍历该二维数组,找出其中最长和最短单词。

2021-02-20 02:01:26 4584 2

原创 信息学奥赛一本通 1142:单词的长度 | OpenJudge NOI 1.7 24

【题目链接】ybt 1142:单词的长度OpenJudge NOI 1.7 24:单词的长度【题目考点】1. 字符串处理2. 输入用空格分隔的多个单词,每次读取一个单词char s[1005];while(cin>>s){ //处理字符串s...}【思路及题解代码】解法1:读入整个字符串,而后做统计#include<bits/stdc++.h>using namespace std;int main(){ char s[1005]; cin

2021-02-19 01:07:23 2728

原创 信息学奥赛一本通 1141:删除单词后缀 | OpenJudge NOI 1.7 20

【题目链接】ybt 1141:删除单词后缀OpenJudge NOI 1.7 20:删除单词后缀【题目考点】1. 字符串处理2. string类成员函数取子串:substr(起始位置, 子串长度)删除字符:erase(删除起始位置, 删除长度)erase(删除起始位置) :从删除起始位置开始一直删除到末尾【题解代码】解法1:用字符数组获取该字符串后三个字符字符串s长度为len时,它的后三个字符分别为s[len - 3], s[len - 2], s[len - 1]判断

2021-02-19 00:51:14 4214

原创 信息学奥赛一本通 1140:验证子串 | OpenJudge NOI 1.7 18

【题目链接】ybt 1140:验证子串OpenJudge NOI 1.7 18:验证子串【题目考点】1. 字符串处理2. 判断子串(字符串模式匹配)本文只给出的都是枚举求子串的算法。假设要判断长为n的字符串是不是长为m的字符串的子串,枚举算法的复杂度为O((m-n)*n)字符串模式匹配算法有KMP、BM、Sunday、Horspool等等,如想学习,可以自行搜索。3. 查找子串函数c++库函数中存在查找一个字符串在另一个字符串中出现位置的函数,该函数自然也可以用来判断一个字符串是否是另一个

2021-02-19 00:22:54 2864

原创 信息学奥赛一本通 1139:整理药名 | OpenJudge NOI 1.7 15

【题目链接】ybt 1139:整理药名OpenJudge NOI 1.7 15:整理药名【题目考点】1. 字符串处理2. ASCII码大小写判断判断一个字符c是不是大写字母:c >= 'A' && c <= 'Z'或isupper(c)判断一个字符c是不是小写字母:c >= 'a' && c <= 'z'或islower(c)大小写转换字符c是一个字母大写转小写:c = c - 'A' + 'a' 或 tolower(c)

2021-02-16 15:27:17 4065 7

原创 信息学奥赛一本通 1138:将字符串中的小写字母转换成大写字母 | OpenJudge NOI 1.7 13:将字符串中的小写字母转换成大写字母

【题目链接】ybt 1138:将字符串中的小写字母转换成大写字母OpenJudge NOI 1.7 13:将字符串中的小写字母转换成大写字母【题目考点】1. 字符串处理2. ASCII码【解题思路】判断一个字符c是不是小写字母方法1:看字符的ASCII码是否在特定区间:c >= 'a' && c <= 'z'方法2:使用<ctype> 中的函数 islower(c)大小写反转字符c表示一个字母大写转小写:c = c - 'A' + 'a'

2021-02-16 14:57:06 3216 3

原创 信息学奥赛一本通 1137:加密的病历单 | OpenJudge NOI 1.7 12

【题目链接】ybt 1137:加密的病历单OpenJudge NOI 1.7 12:加密的病历单【题目考点】1. 字符串处理【解题思路】加密过程有三个工序:循环左移,逆序存储,大小写反转。题目中给出的是加密过程,而问题是给出加密后的字符串,让我们解密。所以我们实际要做的解密过程是:循环右移,逆序存储,大小写反转。循环右移3位以小写字母为例,先将字母a~z转为数字0~25,而后将该值加3,而后模26,即可得到移位后字母的值,最后再将该值转为字母。大写字母同理。也可以写判断语句实现。逆序

2021-02-14 18:27:59 3882

原创 信息学奥赛一本通 1136:密码翻译 | OpenJudge NOI 1.7 09:密码翻译

【题目链接】ybt 1136:密码翻译OpenJudge NOI 1.7 09:密码翻译【题目考点】1. 字符串处理2. ASCII码【解题思路】思路1:用判断语句读入字符串,如果字符是a~y或A~Y,输出其后一个字母,即ASCII码加1。如果字符是z或Z,应输出a或A,即ASCII码减25。思路2:使用公式计算首先将字母a~z或A~Z映射到0~25,将这一值叫做字母值。将字母值加1,该值对应的就是原字母后一个字母。如果加1后得到的字母值是26,此时该值对应的字母应该是a或A,其字母值应

2021-02-14 17:25:08 4976 4

原创 信息学奥赛一本通 1135:配对碱基链 | OpenJudge NOI 1.7 07

【题目链接】ybt 1135:配对碱基链OpenJudge NOI 1.7 07:配对碱基链【题目考点】1. 字符串处理字符处理有两种方法每次读入一个字符,处理这一字符char c;while((c = getchar())!='\n')//若字符串不以换行符为结尾,而是读到输入文件的末尾,判断条件应写为:(c = getchar())!=EOF{ //处理读取到的字符c}读入整个字符串,遍历字符串,处理各个字符char s[100];//数组长度应大于字符串长度cin

2021-02-14 16:44:24 2835

原创 信息学奥赛一本通 1134:合法C标识符 | OpenJudge NOI 1.7 06:合法C标识符

【题目链接】ybt 1134:合法C标识符OpenJudge NOI 1.7 06:合法C标识符【题目考点】1. 字符判断判断一个字符c是不是数字: c >= '0' && c <= '9'或isdigit(c)判断一个字符c是不是大写字母:c >= 'A' && c <= 'Z'或isupper(c)判断一个字符c是不是小写字母:c >= 'a' && c <= 'z'或islower(c)判断一个字符c

2021-02-07 04:26:04 3104

原创 信息学奥赛一本通 1133:输出亲朋字符串 | OpenJudge NOI 1.7 05:输出亲朋字符串

【题目链接】ybt 1133:输出亲朋字符串OpenJudge NOI 1.7 05:输出亲朋字符串【题目考点】1. 字符与ASCII码【解题思路】输入字符数组s1,结果储存在字符数组s2,将s1的相邻字符的值相加,得到数组s2对应位置的字符s1的第i和第i+1字符相加,得到s2的第i字符,即s2[i] = s1[i] + s1[i+1]。s1长度为len,当第i字符是最后一个字符,即i为len-1时,应该有s2[i] = s1[i] + s1[0],此时i + 1为len,有(i+1)%

2021-02-07 04:04:17 4224 3

原创 信息学奥赛一本通 1132:石头剪子布 | OpenJudge NOI 1.7 04

【题目链接】ybt 1132:石头剪子布OpenJudge NOI 1.7 04:石头剪子布【题目考点】1. 字符串处理2. 判断字符串相同s1,s2是字符数组,判断二者是否相同:strcmp(s1,s2)==0为真,二者相同,否则二者不同。s1,s2是string类对象,判断二者是否相同:s1 == s2为真,二者相同,否则二者不同。【解题思路】先输入n,循环n次,每次输入两个字符串如果这两个字符串相同,输出Tie如果第一个字符串表示的出拳胜过第二个字符串表示的出拳,输出Pla

2021-02-02 00:30:02 5323

原创 信息学奥赛一本通 1131:基因相关性 | OpenJudge NOI 1.7 03

【题目链接】ybt 1131:基因相关性OpenJudge NOI 1.7 03:基因相关性【题目考点】1. 字符串【解题思路】遍历字符串,计数,看两字符串对应位置字母相同的情况有多少,然后用该计数除以字符串长度,得到比例,再与输入的阈值比较。【题解代码】解法1:#include<bits/stdc++.h>using namespace std;int main(){ double y;//y:阈值 char s1[505], s2[505]; cin>&g

2021-02-01 23:38:54 3459

原创 信息学奥赛一本通 1130:找第一个只出现一次的字符 | OpenJudge NOI 1.7 02

【题目链接】ybt 1130:找第一个只出现一次的字符OpenJudge NOI 1.7 02:找第一个只出现一次的字符【题目考点】1. 字符串2. 散列存储【解题思路】依据散列存储思想,设数组a,a[字母]表示该字母已出现的个数。比如a[‘b’]表示字母b出现的个数。各字母的ascii码都处于0~128范围之内,数组a的长度设为128就够用了。具体过程如下:输入字符串遍历字符串,统计各个字母出现的个数再次从前向后遍历字符串,判断当前字符是不是只出现过一次。如果是,输出该字符,程序

2021-02-01 23:32:31 3919 2

七段码 HUSTOJ 题目导出文件

七段码 HUSTOJ 题目导出文件

2023-03-14

Java控制台猜数字游戏

文曲星上有过的那种猜数字游戏,输入一个数字,返回A,B作为线索。用最基础的控制台编程实现。 该程序应用了输入,输出,异常处理,正则表达式,字符串处理等基本操作语句,做这个小程序,对初学者掌握基本语句很有帮助。

2011-06-28

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除