(全是干货,如果你是C语言的初学者,搞懂如下推荐的题目,你就已经比你的同学走在前面很多了!)-------(后期补充)
(如果有些代码你看不懂,请将你的问题写在评论区,我一定会回复你的!)
这是我初学的时候觉得一些比较难的题目,我把这些题目推荐给大家,免去了做一些无用的题,还浪费了一些时间,无脑题少做,虽然很爽,但是对提高没啥好处。。。
比如说,,这题:https://www.luogu.com.cn/problem/P1000
榜一大佬的答案就是了,,,,不过嘞。。。。。。如果你的思路是榜二的思路,强烈推荐写一波(得费点神咯,hh~)
做题流程:
做题前审题一定要仔细,观察有哪一些限制条件,将关键词记下。(限制条件一定要找完整,要不然到后面会浪费很多时间)。
一定要带草稿纸,在草稿纸中把你心里的想法用简单的C语言表达出来,
写完之后对照限制条件顺着你自己的思路走一下,限制条件如果有点多的话,多自己用几个例子
去代替,碰到错误纠正过来。
最后照着纸的内容快速打码。
思路大家都知道,最主要是调试代码的能力,我们平时刷题,练的就是调试代码的能力,如果你能很快的调试出代码的问题,那么你就能多争取一些时间去刷下一题,千万不要遇到困难就退缩,记得当时刷题的时候,一个题目要改几天,万匹草泥马奔腾而过,,,,时不时口吐芬芳。。。。。
小提示:
①有时候思路是对的,感觉写的算正确,但是就是得不到满分。那可能题目再卡你的点,把范围开大一点,对于初学者来说,想开多大就开多大。开在主函数里面数据大了就会爆栈,所以开数组的话推荐开到主函数外面去。
②有循环这种语法就一定要好好用到,因为电脑是死的,不会偷懒,只会干傻逼事,所以我们有时候就没必要帮他想,累了自己。
初学者一定要把思路转换过来,用电脑的思维去想问题,机器可没你那么聪明伶俐、冰雪聪明、秀外慧中、聪明才智、颖悟绝伦..........聪明....绝顶。
(兄弟保重,我先剃为敬!)
例:
对于此题,我刚开始想,应该用什么数学公式,把双休日分开算,最后七算八算经过麻烦的死,一看答案,我的妈呀!!!真简单,就让电脑循环算,给他一个限制条件,给他一个终止命令,此题结束!
审题一定要仔细,弄清楚题目究竟要让你干什么。别被题目迷惑了。
看完了一点提示,先做一下这题吧:https://www.luogu.com.cn/problem/P1424
题目推荐
①
在初学的时候,我就被这题绕住了,当时在网上搜到极简代码,用指针写,当时一脸懵逼,到了后面刷的题多了一点,才知道这题其实很简单,所以我把这题推荐给大家。
http://www.51cpc.com/problem/1059
附上个人题解:
https://www.cnblogs.com/Attacking-vincent/p/12720837.html
②
这题是有关于acill码的题目,当时对这个东西有点陌生。
这里有个小技巧,(适用于不记得ACILL码,而且没网,,大多是在考试的时候),你可以这样:
#include<stdio.h> int main(){ char ch='a'; printf("%d ",ch); return 0; }
https://www.luogu.com.cn/problem/P1914
这题就是利用了取模思想,有了取模,你就可以将一条直线的关联信息变成环状。
#include<stdio.h> #include<string.h> int a[1000]; int main(){ int n,i; char a[1000]; scanf("%d%s",&n,a); for(i=0;a[i]!='