写在我的笔记系列最前面:博客的内容为本人学习《算法竞赛入门到进阶》的学习记录,仅用来记录自己的一个学习过程,不在乎别人怎么看怎么评价,大不了私密即可。同时关于博客的排版,因为是直接从笔记中粘贴过来,并且也是为了节省时间,所以排版并不会多好看。
写笔记的参考书籍已经告知,那么笔记主要记什么内容,参照12届蓝桥杯的比赛范围。

-
OJ如何判题(根据测试数据只看输入输出)

上面为四种情况AC,TLE,PE,WA等,最好情况是AC。
比赛的时候可以考虑用打表的方式来混分,即给定什么输入,输出什么,就直接cout即可。
-
输入输出函数

这里主要是考虑putchar和puts,getchar和gets的区别
有个s说明是string类型,即为字符串类型
-
输出结束的方式(自己常用的为第二种其余两种写法要看懂)



一般根据题目给多少的数据量,就定义长度进行输入。
或者直接给定几个参数,不用while循环语句,直接一次性输入所有
就2021.1.5前来看,一般都是直接输入所有的数再进行数据处理和算法运算。
对于第三种情况的输入,例如输入10个数字,如果当前输入的数是0则停止输入数据
2021.1.5之前对于这种情况是这样解决的(以后所有代码都只涉及到主体代码,不涉及到所有)
方法1(旧方法):
int n,a[11];
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
if(a[i]==0)break;
}
方法2(新方法):
int n;
while(~scanf("%d",&n)&&n)
注意,如果用cin来进行输入,则在while中不允许使用"~cin",否则出现如下错误。

-
输入输出效率分析

这说明在大数据量的情况下,用scanf和printf比cin与cout效果更好
这篇博客记录了作者学习《算法竞赛入门到进阶》的心得,重点讨论了OJ如何判断输入输出,如AC、TLE、PE、WA等状态。博主分享了输入输出函数的选择,如putchar、puts、getchar、gets的使用,并对比了cin、scanf、cout、printf的效率。此外,还介绍了如何处理特定输入格式,如遇到0停止输入的情况,提供了两种不同的解决方案。博客强调在大数据量情况下,scanf和printf的效率优于cin和cout。
362

被折叠的 条评论
为什么被折叠?



