题目分类:字符串
NickHdx
有一口气点一盏灯
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
UVa:537 - Artificial Intelligence?
-------------------------------------------------------------------------------------------- Keep It Simple,Stupid!------------------------------------------------------------------------原创 2014-04-21 13:49:59 · 544 阅读 · 0 评论 -
CF:63A. Sinking Ship
一样的,边输入边比较,保存,然后按题目所要求的顺序输出。#include#includestruct str{ char name[20]; char status[20];}crew[110];struct st{ char name[20];};int main(){ int n; while(scanf("%d",&n)!=EOF){原创 2013-05-06 08:59:10 · 848 阅读 · 0 评论 -
CF:291B. Command Line Arguments
要输出的参数两侧有两种情况,可能由“ ”包着,也可能由空格包着,所以得根据情况判断。要注意首位置和末位置为要输出参数时,条件不一样。#include#includechar s[1000000];int main(){ while(gets(s)!=NULL){ int a,p; int len=strlen(s); a=0;原创 2013-05-06 08:51:26 · 775 阅读 · 0 评论 -
CF:141A.Amusing Joke
为了便于一次性比较,先将输入的前两个字符串连接起来,string类字符串用运算符“+”即可,就相当于C中的strcat( );连接函数。然后将连接起来后的字符串逐个与输入的第三个字符串比较,看是否能找到匹配,若找到匹配则另标记标量被赋值为1,并将第三个字符串中匹配的字符删除,以免下次重复比较,此过程中用到string类中的擦除函数:变量名.erase( ); 此函数括号里的参数可以是一个区间,也可原创 2013-05-05 21:43:41 · 725 阅读 · 0 评论 -
CF:96A.Football
#include#includeusing namespace std;int main(){ string str; while(cin>>str){ int count=1; int t=1; for(int i=0;i<str.length();++i){ if(str[i]==str[i+1])原创 2013-05-05 21:08:54 · 724 阅读 · 0 评论 -
CF:71A.Way Too Long Words
前些天,刚看完C++中有关string类的函数的用法,但只大概地记得那些函数有什么功能,想起要用的时候再翻开网页看怎么用。使用string类输入输出(cin、cout)字符串的确比C中输入输出字符串方便,要多次输入的时候在while后的括号里不用EOF或NULL,只需while(cin>>+string变量)即可。#include#includeusing namespace std;i原创 2013-05-05 20:29:41 · 630 阅读 · 0 评论 -
NEU:F-大侠住店
昨晚参加了NEU-OJ上的一个竞赛,只做出了这道题,有些NEU跟我同年级的童鞋做了三四道,小伙儿,路还很长啊……期末了,事儿也多了起来,有很多事都放不下,做题的量不多,能每天一道就不错了,加油!尽量把量增加,不能懈怠了。题目如下: 问题 F: 大侠住店时间限制: 1 Sec 内存限制: 128 MB提交: 85 解决: 45[提交][状态][讨论版]题目描述原创 2013-05-23 20:57:58 · 1277 阅读 · 2 评论 -
UVa:490 - Rotating Sentences
刚开始接触这道题时,并不知道如何结束输入,苦恼了好一阵,做HDU的hat‘s word时师兄给了提示之后才明白,“Ctrl+Z+回车” 是在这种情况下结束输入的。这道题还需注意的是:在某个句子输出完后,如果还要输出,则需在没有字符的位置用空格代替。就因为没注意到这一点,WA了好几次。#include#includechar se[110][110];int main(){ int原创 2013-05-21 10:53:05 · 643 阅读 · 0 评论 -
CF:94A. Restoring Password
先将“0,1,2,3,4,5,6,7,8,9”所对应的的字符串保存,再用密码串的各个子串与之比较,输出相应十进制数。截取密码串获得子串,要用到substr( )函数,其参数与erase( )函数的参数一样,可以是范围,也可以是某个字符的地址。#include#includeusing namespace std;struct word{ string num;}gro[10];原创 2013-05-06 09:14:08 · 700 阅读 · 0 评论 -
CF:58A. Chat room
使用循环嵌套,且循环变量不变,一直是i,只要其中的一个循环到头了,所有的循环也就到头了。#include#includeusing namespace std;int main(){ string word; int t; while(cin>>word){ for(int i=0;i<word.length();++i){原创 2013-05-05 21:50:08 · 955 阅读 · 0 评论 -
CF:108A. Palindromic Times
因为只有24个小时,所以这道题用了“傻瓜式”的方法,如果数再大一点的话,就得另想法子了。这道题要比较的次数不较多所以用string类是再好不过的了。#include#includeusing namespace std;int main(){ string t; while(cin>>t){ string h=t.substr(0,2);原创 2013-05-06 09:19:34 · 1322 阅读 · 2 评论 -
CF:99A. Help Far Away Kingdom
#include#includeusing namespace std;int main(){ string num; while(cin>>num){ for(int i=0;i<num.length();++i){ if(num[i]=='.'){ if(num[i-1]=='9'){原创 2013-05-06 09:05:32 · 733 阅读 · 0 评论 -
CF:43A. Football
简单题,边输入边计数然后比较输出即可。#include#includeusing namespace std;int main(){ int n; string goal,t1,t2; while(cin>>n){ int a=0,b=0; for(int i=0;i<n;++i){ cin>>goal;原创 2013-05-06 08:55:09 · 712 阅读 · 0 评论 -
CF:59A. Word
#include#includeusing namespace std;int main(){ string s; while(cin>>s){ int low=0,up=0; for(int i=0;i<s.length();++i){ if(s[i]>=65&&s[i]<=90) ++up;原创 2013-05-06 08:35:01 · 830 阅读 · 0 评论 -
CF:78A. Haiku
#include#includechar fir[110],sec[110],thi[110];int main(){ while(gets(fir)!=NULL){ gets(sec); gets(thi); int a=0; for(int i=0;i<strlen(fir);i++) if(原创 2013-05-06 09:03:13 · 565 阅读 · 0 评论 -
CF:281A.Word Capitalization
#include#includeusing namespace std;int main(){ string str; while(cin>>str){ if(str[0]>=97) str[0]-=32; cout<<str<<'\n'; } return 0;}原创 2013-05-05 21:12:02 · 844 阅读 · 0 评论 -
UVa:401 - Palindromes
这是回归以后发表的第一道UVa的题目,略感原创 2014-04-19 09:33:29 · 511 阅读 · 0 评论 -
UVa:10361 - Automatic Poetry
按模式“ s1s3s5”来将第一句原创 2014-04-20 18:14:23 · 494 阅读 · 0 评论 -
UVa: 10010 - Where's Waldorf?
大概题意是:给一个m*n的字符矩阵,原创 2014-04-20 08:08:36 · 473 阅读 · 0 评论 -
UVa:10878 - Decode the tape
观察磁带可知,磁带以“”原创 2014-04-23 17:31:19 · 568 阅读 · 0 评论 -
UVa:409 - Excuses, Excuses!
此题需要进行字符串的匹配,原创 2014-04-23 17:10:08 · 539 阅读 · 0 评论 -
UVa:10815 - Andy's First Dictionary
gets输入:#include#include#include#includeusing namespace std;char text[210],comp[210];struct Word{ char word[210];}w[5010];bool cmp(struct Word a,struct Word b){ return strcmp(a.word,b原创 2014-04-24 18:47:14 · 418 阅读 · 0 评论 -
UVa:644 - Immediate Decodability
这题不难,但有些细节得多加注意(代码中的)原创 2014-04-24 22:25:39 · 462 阅读 · 0 评论 -
UVa:10115 - Automatic Editing
此题又有字符匹配匹配的问题,原创 2014-04-26 09:41:44 · 531 阅读 · 0 评论 -
CF:259A. Little Elephant and Chess
经分析,只要有一行有相邻的两个字符相同,就不能转换成题目所要求的。#include#includeusing namespace std;int main(){ string c[8]; while(cin>>c[0]){ for(int i=1;i<8;++i) cin>>c[i]; int t=1;原创 2013-05-06 08:41:55 · 1078 阅读 · 0 评论 -
CF:208A. Dubstep
先找到字符串中所有的“WUB”,并将其转换成空格,此过程要用到 变量名.find( ) 和 变量名.replace( ) 函数,若find( )函数能找到所要找的字符串,则返回的是所找字符串第一次出现的首位置,若未找到,则返回“-1”,即npos的值;replace函数后括号里的参数必须包含替换范围和所要换成的字符串。然后将多余的空格擦除即可输出,注意不要输出头尾空格。#include#in原创 2013-05-06 08:04:57 · 663 阅读 · 0 评论 -
CF:219A. k-String
每个不同字符的个数若能被阶数K整除,则能输出K阶相同字符串相连,否则不能,则输出“-1”。#include#include#includeusing namespace std;char s[1010],b[1010];int a[1010];int main(){ int k; while(cin>>k){ cin>>s; mems原创 2013-05-06 08:30:50 · 664 阅读 · 0 评论 -
CF: 118A.String Task
要获得用string类定义的字符串变量的长度,有两个函数可用,一是:变量名.size();二是:变量名.length();两者没有区别,类似于C中的strlen()函数。“ length是因为沿用C语言的习惯而保留下来的,string类最初只有length,引入STL之后,为了兼容又加入了size,它是作为STL容器的属性存在的,便于符合STL的接口规则,以便用于STL的算法。”----流言飞语原创 2013-05-05 20:49:29 · 758 阅读 · 0 评论 -
CF:41A. Translation
这题用string类函数的话反而显得麻烦,但值得一试,用了一下rbegin( )和rend( )函数。其中用到反向迭代器reverse_iterator,现在还没弄懂其运作原理,待有时间再认真研究研究,总之要明白rbegin( )从反向开始,rend( )从反向结束。#include#includeusing namespace std;int main(){ string s,原创 2013-05-06 08:23:03 · 733 阅读 · 0 评论 -
CF:112A.Petya and Strings
要比较string类字符串大小时,只需用关系运算符(>,==,#include#includeusing namespace std;int main(){ string s1; string s2; while(cin>>s1>>s2){ for(int i=0;i<s1.length();++i){ if(s1[i]<=原创 2013-05-05 20:59:24 · 1089 阅读 · 0 评论
分享