- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
考虑到最近都没人问问题了,不知道是大家都懂了还是不敢问了(吓你们,可不是我的初衷= =),我来写一篇让新手自己动手解决问题的指南吧。我先通过一个具体例子来说吧……大家先看看这份代码:#includecstdioint n1,n2,f1[200],f2[200],dp[200][200],t;int max(int a,int b){return ab?a:b;}int main(){ while(scanf(%d%d,n1,n2),(n1||n2)); { for (i=1;i=n1;i++) scanf(%d,f1[i ]) for (j=1;j=n2;j++) scanf(%d,f2[j]); memset(dp,0,sizeof(dp)); for (i=1;i=n1;i++) for (j=1;j=n2;j++) if (f1==f2[j]) dp[j]=dp[i-1][j-1]+1; else dp[j]=max(dp[i-1][j],dp[i ][j-1]); printf(%d\n,dp[n1][n2]); }}有没有人会问“ab?a:b”是什么? 事实上,这是一个棘手的问题,因为搜索引擎对?:=类似的符号并不能很好地处理,如果以“ab?a:b”百度搜索,只会徒劳而返,但是google可以搜出来。然而面对“a?=b”的时候google也泪流满面了。像这种语法问题,最好在群里面问或者百度知道,开一个帖子的话内容太单薄,并且群和百度知道的回答速度要快得多。这两个都是问号表达式,第一个的意思是ab为真的时候表达式值为a 否则值为b 这样就达到了求最大值的效果。第二个的意思是如果ba 则把b赋值给a,如果不是,就不赋值。当然,如果你没有加入任何的讨论群,或者没人理你的百度知道或群上提的问题(很正常,这是一个快节奏的时代,人们只会关注他们感兴趣的话题,理解别人,尝试提高悬赏或者加入一些有人气的讨论群),你也可以尝试自己动手解决。写一个小程序验证一下他的效果就行了。比如说,这样:a=2; for (i=-5;i=5;i++) printf(%d ,a?=i);注意,scanf(%d%d,n1,n2),(n1||n2) 这是一个逗号表达式。具体自己搜索或者看书。效果是n1 n2都是0的时候终止循环。如果接下来你还要问memset(dp,0,sizeof(dp))是用来做什么的,那就真的是不应该了。像函数这样的东西,一搜一大把文章。这里我还是不厌其烦地给出答案,把从dp(这个内存地址)开始的一段长度为sizeof(dp)的内存赋值为0。说白了,就是把dp里面所有元素的值的赋值为0。然后我们对这段代码进行编译。然后就是这样的一堆语法错误:Sayadebug2.cpp: In function `int main():Sayadebug2.cpp:8: error: `i undeclared (first use this function)Sayadebug2.cpp:8: error: (Each undeclared identifier is reported only once for each function it appears in.)Sayadebug2.cpp:9: error: expected `; before forSayadebug2.cpp:9: error: `j undeclared (first use this function)Sayadebug2.cpp:9: error: expected `; before ) tokenSayadebug2.cpp:10: error: `memset undeclared (first use this function)————Sayadebug2.cpp:8: error: `i undeclared (first use this function)这是说i没有定义。这个问题很简单,把变量i定义就好了。Sayadebug2.cpp:9: error: expected `; before for这句话是说在for之前少一个分号。补上即可。Sayadebug2.cpp:10: error: `memset undeclared (first use this function)这句话是说memset这个函数没有定义。先检查一下自己是否写对了函数名,如果确定写对了,那么就可以肯定原因是没有这个函数的头文件。最简单的方法就是以“mem
文档评论(0)