![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
字符串
文章平均质量分 73
李祖林
这个作者很懒,什么都没留下…
展开
-
hdu 4287 Intelligent IME
题意:告诉你手机键盘上数字对应的字母,然后给你一些数字串和一些字母串,问你有几个字母串对应相应的数字串。解法:map,先手机键盘建立一个map,然后数字串和对应的编号建立一个map;#includeusing namespace std;int main(){ mappq; mapqp; pq['a']='2'; pq['b']='2'; pq原创 2016-07-25 20:24:45 · 210 阅读 · 0 评论 -
noj 1005 多项式加法
对于输入,由于是按指数递减输入的,故我们只需按照输入顺序进行存储即可。 对待一个输入: 1.如果当前多项式为空,那么将此项放入第一项 2.如果当前多项式不为空 3.如果有指数相同的项,那么将此项与指数相同的项合并,如果系数变为0,则将此项删除。 4.如果没有指数相同的项(那么此项的指数一定比当前所有项的指数都小),那么将此项放入多项式末尾。 这样就可以得到输入的两个多项式,原创 2016-07-28 13:04:30 · 561 阅读 · 0 评论 -
noj 1006 多项式乘法
对于输入,由于是按指数递减输入的,故我们只需按照输入顺序进行存储即可。 对待一个输入: 1.如果当前多项式为空,那么将此项放入第一项 2.如果当前多项式不为空 3.如果有指数相同的项,那么将此项与指数相同的项合并,如果系数变为0,则将此项删除。 对于最后一步,多项式乘法,即将第一个多项式的项和第二个多项式项分别相乘得到一个项,然后新开辟一个链表使用下面的方法存储。1.如果原创 2016-07-28 21:32:22 · 299 阅读 · 0 评论 -
练习场acm 题目663 弟弟的作业
解法:sscanf的使用! #includeusing namespace std;int main(){ char a[20]; int cnt=0; while(scanf("%s",a)==1) { int b,c,sum,f=0,len=strlen(a); for(int i=0;i<len;i++)原创 2016-07-31 09:20:26 · 571 阅读 · 0 评论 -
bnuoj 1057 函数
这题让我做成这样,也是醉了,看来做题方法很重要,不然会很坑!!!解法:字符串模拟!#includeusing namespace std;int main(){ int T; cin>>T; while(T--) { string str,s; cin>>str>>s; int op=str.find(原创 2016-08-16 15:30:22 · 269 阅读 · 0 评论 -
hdu 2214 函数图像
函数图像Problem Description在数学中,我们经常会遇到,关于函数的问题,在画一些函数的图像的时候,最长用的方法就是“描点法”。“描点法” 的具体步骤如下:> 计算出函数在某些特定点的值> 在坐标系中标记出这些点> 用平滑的曲线连接这些点但是,在实际的操作中,我们会发现,前两部的计算量还是相当大的,所以,我们想编写一个程序,能够在一个坐标系中原创 2016-08-02 10:22:35 · 381 阅读 · 0 评论 -
zoj 3930 Dice Notation
简单的字符串题!之前写的乱七八糟!看到大牛的代码才发现自己有多水 写代码能力太弱!刷题ing!原创 2016-06-08 15:29:29 · 310 阅读 · 0 评论 -
C语言函数sscanf()的用法
转至:http://www.cnblogs.com/lyq105/archive/2009/11/28/1612677.html在我的学习过程中,从文件读取数据是一件很麻烦的事,所幸有sscanf()函数。 C语言函数sscanf()的用法sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: int sscanf( string str, s转载 2016-08-03 10:29:33 · 289 阅读 · 0 评论 -
_itoa atoi、atof、itoa、itow _itoa_s 类型转换使用说明
转至:http://www.cnblogs.com/lidabo/archive/2012/07/10/2584706.html_itoa功能:把一整数转换为字符串用法:char * _itoa(int value, char *string, int radix); 详细解释: _itoa是英文integer to array(将int整型数转化为一个字符串,并将值保存在数组s转载 2016-08-03 10:50:18 · 490 阅读 · 0 评论 -
台州oj 5061 迷宫地图
5061: 迷宫地图 时间限制(普通/Java):1000MS/3000MS 内存限制:65536KByte总提交: 114 测试通过:28 描述在一些迷宫游戏中,往往有多个关卡,每个关卡有不同的地图,地图往往是由n行m列的方格组成,每个格子上可能是通道、墙壁、道具、玩家等。在设计时,我们往往需要通过地图编辑器生成地图,原创 2016-08-08 15:56:17 · 531 阅读 · 0 评论 -
bnuoj 1028 软件安装
软件安装 yjy和yc都很喜欢linux ,但是一开始linux相当难装,等他们装好linux后,又会发现好多软件都没有装,所以每次重装电脑,yjy 都会很郁闷.直到有一天yc 告诉yjy 一个很牛的软件,那就是apt-get.只要你知道软件的名字,apt-get 就会自动下载,自动安装.更牛的是apt-get 还会分析软件的依赖关系,很智能的选择软件的安装顺序。例如:原创 2016-08-21 20:57:38 · 396 阅读 · 0 评论 -
nyoj 题目1285 缩写恢复
缩写恢复时间限制:1000 ms | 内存限制:65535 KB描述 多行字符串,最多10000行,由单词,单词的缩写,空格和标点符号组成。非缩写单词有三种形式:1.第一个字母大写,其他小写。2.全部大写。3.全部小写。严格区分大小写,Are 和 are 和ARE视为不同的三个单词缩写单词的形式为:第一个字母+中间原创 2016-08-25 10:51:06 · 428 阅读 · 0 评论 -
nyoj 题目409 郁闷的C小加(三)
郁闷的C小加(三)时间限制:1000 ms | 内存限制:65535 KB难度:4描述 聪明的你帮助C小加解决了中缀表达式到后缀表达式的转换(详情请参考“郁闷的C小加(一)”),C小加很高兴。但C小加是个爱思考的人,他又想通过这种方法计算一个表达式的值。即先把表达式转换为前缀和后缀表达式,再求值。这时又要考虑操作数是小数和多位数的情况。输入第一行原创 2016-08-21 17:25:50 · 433 阅读 · 0 评论 -
uva 12936 hehe
解法:map+stringstream!#include#define Maxn 1005using namespace std;int main(){ string str,str4[105]; int k=0; mappq; string str1,str2,str3,str5; while(getline(cin,str)) {原创 2016-07-31 11:22:23 · 322 阅读 · 0 评论 -
C++之string类型详解
from:http://citycowboy.blog.sohu.com/50058804.html之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心内存是否足够、字符串长度等等,而且作为一个泛型类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简转载 2016-08-14 09:59:01 · 10133 阅读 · 0 评论 -
uva 12930 Bigger or Smaller
解法:字符串题,c++里的sting类!#includeusing namespace std;int main(){ string str,st; int v=0; while(cin>>str>>st) { string str1,str2,str3,str4; int op=str.find(".");原创 2016-08-14 10:18:47 · 314 阅读 · 0 评论 -
练习场 1253 Turing equation
题意:给你一个等式,里面的数据都是反向的,然后问你计算结果是否正确!解法:简单字符串题。 #includeusing namespace std;int main(){ char str[55]; while(scanf("%s",str)!=EOF) { char a[10],b[10],c[10]; int len=str原创 2016-07-27 21:27:02 · 202 阅读 · 0 评论 -
南阳理工acm 1236 挑战密室
题意:求化学反应方程式的第一种生成物的相对分子质量,难点在于细节处理,还好括号是一层,数字是1-9,降低了难度。解法:map+模拟。 #includeusing namespace std;int main(){ mappq; pq["N"]=14; pq["C"]=12; pq["O"]=16; pq["Cl"]=35; pq["原创 2016-07-27 21:16:53 · 235 阅读 · 0 评论 -
hdu 1075 What Are You Talking About
题目大意:给你一本火星词典,每个火星单词对应一个英文单词。然后给你一篇火星文章,要求你翻译成英文。要求如下:如果这个火星单词用英文单词可以表示,就翻译成英文,如果没有这个单词,就原样输出。遇到标点符号或者空格原样输出即可。解法:map的使用。#includeusing namespace std;int main(){ mappq; string s,原创 2016-07-27 11:24:17 · 156 阅读 · 0 评论 -
bnuoj 1011 人工智能?
strin类的find和atof的运用!#includeusing namespace std;int main(){ double d,g,y; int T,pd,py,pg,cas=0; cin>>T; getchar(); while(T--) { string str,s; ge原创 2016-07-14 10:21:53 · 356 阅读 · 0 评论 -
hdu 1088 Write a simple HTML Browser
题意直接看output部分就好了,大意是:每行不超过80个字符,遇到换行,遇到先看他是不是行头,如果是不换行输出80个下划线后换行!不是的话,先换行后输出80个下划线,文本最后如果换行了就不换行,没换行就要换行!#includeusing namespace std;int main(){ char str[10000]; int len; int sum原创 2016-07-14 16:14:54 · 214 阅读 · 0 评论 -
hdu 2594 Simpsons’ Hidden Talents
用next数组做,注意abab abab这个数据就可以了!!#include#include#include#includeusing namespace std;int n;int next1[100015];string s,ss,str;void mn(){ next1[0]=0; for(int k=0,i=1;i<n;i++) {原创 2016-07-07 16:29:52 · 150 阅读 · 0 评论 -
hdu 2708 Vertical Histogram
数据有多组!!还就是注意格式,每行末尾没有多余的空格!!!! #includeusing namespace std;char a[4][80];int main(){ while(gets(a[0])) { int b[26]={0}; for(int i=1;i<4;i++) g原创 2016-07-05 17:28:54 · 353 阅读 · 0 评论 -
hdu 2137 circumgyrate the string
之前用cin输入老是WA,后面改成scanf就过了,不知道什么原因!还有一点就是中心位置不改变,有两种旋转方式,顺时针和逆时针!!! #includeusing namespace std;int main(){ char str[85]; int n,k,len; while(scanf("%s%d",str,&n)!=EOF)原创 2016-07-04 16:36:26 · 239 阅读 · 0 评论 -
hdu 2074 叠筐
( 多筐相叠时,最外筐的角总是被打磨掉)题目里在这里埋了一个坑!!!!好好读题有惊喜!还就是格式,第一个案例不用输出换行,后面先输一个换行然后输出一个答案!!!巨坑的一道题!!!#includeusing namespace std;char a[85][85];int main(){ int n,x,y; char c1,c2,c; int fl原创 2016-07-03 23:49:15 · 280 阅读 · 0 评论 -
hdu 1113 Word Amalgamation
c++中的string类好用!!#includeusing namespace std;int main(){ string str,s[105],ss[105],sss[105]; int k=0; while(cin>>str,str!="XXXXXX") { sss[k]=str; sort(str.原创 2016-07-03 21:33:04 · 168 阅读 · 0 评论 -
hdu 1039 Easier Done Than Said?
比较恶心的字符串题!!#includeusing namespace std;int main(){ string str; while(cin>>str,str!="end") { int flag=0,f=0; for(int i=0;i { if(str[i]=='a'||str原创 2016-07-03 20:39:00 · 219 阅读 · 0 评论 -
hdu 1062 Text Reverse
用到string里的stringstream和reverse!!c++真的很强大,然后就是注意格式,两单词间的空格不止一个!!#includeusing namespace std;int main(){ int n; cin>>n; getchar(); while(n--) { string str,buf;原创 2016-07-03 09:21:41 · 185 阅读 · 0 评论 -
hdu 3788 zoj问题
题目好绕!读了很久才读懂,主要是第三个条件:由条件二得b=1时,a*b=c,所以回到条件三有a*(b+1)=a+c得c=a*b(这是我自己的理解);还有就是注意zj是错误的,出现多个z多个j也是错误的,j在z前面也是错误的!#includeusing namespace std;int main(){ string str; while(cin>>str)原创 2016-06-21 10:17:19 · 283 阅读 · 0 评论 -
hdu 1251 统计难题
字符串水题!!#includeusing namespace std;mappq;int main(){ string str,str1; while(getline(cin,str),str!="") { for(int i=0;i { if(pq.count(str.substr(0原创 2016-06-16 20:27:23 · 183 阅读 · 0 评论 -
hdu 1238 substrings
会用c++中的reverse+substr,数据比较小然后直接枚举就好了。。。。。。#includeusing namespace std;int main (){ int n,v,t; string str[105]; cin>>t; while(t--) { cin>>n; int minn=原创 2016-06-15 09:37:50 · 205 阅读 · 0 评论 -
hdu 1106 排序
字符串水题,巧用stringstream;#includeusing namespace std;int main(){ string str; long long a[1005]; while(cin>>str) { for(int i=0;i if(str[i]=='5')原创 2016-06-11 20:31:21 · 189 阅读 · 0 评论 -
zoj Int-7bits 3713
题目大意:给定一个字符串,按照十六进制输出,但是对于字符串的长度的输出比较麻烦,首先是将长度len转换成二进制,取后七位,如果除去后七位前边还有1那么就在第八位位置加上1,然后将len右移7位,继续上述步骤,例如10001000100,那么第一次取出来的后七位就是1000100,因为前边还有1,所以第一次取出来的变为11000100,然后将len右移7位得到1000,依次输出他们的十六进制就可原创 2016-06-09 14:57:57 · 238 阅读 · 0 评论 -
bnuoj 1059 实力排行
解法:stringstream+map想复杂了,其实可以很简单(用sscanf就好)!#includeusing namespace std;struct Team{ double val; int dz; string dm;};bool cmp(Team a,Team b){ if(a.val!=b.val) return a.v原创 2016-08-14 22:47:04 · 388 阅读 · 0 评论