oj系统上写代码的一些小技巧

本文分享了在oj系统上编程的一些实用技巧,包括利用freopen改变输入输出方式、数组初始化、定义常量、处理多组测试数据的循环、选择合适的输入输出函数、处理整型溢出、注意字符串输出效率、避免scanf的副作用、读取文件结束的判断、利用位移运算提升计算速度、使用三目运算符等,旨在提高代码效率和正确性。
摘要由CSDN通过智能技术生成
程序书写过程中的一些小技巧:
1. freopen(“1.txt”,”r”,stdin);  //程序运行后系统自动输入此文档里面的内容(不需要进行手动输入)
freopen(“1.txt”,”w”,stdout);  //程序输出的内容保存在此文件里
2. memset(a,0,sizeof(a));     //数组的初始化。一般定义一个数组都要初始化
数组定义int a[10]  为全局变量的话,其全部元素默认赋值为0;整型数据默认为0,字符串默认为空。
3. #define max 0x0ffffff;   //max 为正无穷
#define min -0x0ffffff;
4. 多组测试数据使用  while(n--){ 程序 }
5.  一般用C语言节约空间,要用C++库函数或STL时才用C++;
cout、cin和printf、scanf最好不要混用。而且需要注意的是,如果题目是大规模数据的输入输出,尽量使用printf和scanf,数据量一大,速度明显比c++的输入输出快。 输出1000000个数据,cout 大概用6s  printf 用了0.562s
6. 有时候int型不够用,可以用long long或__int64型(两个下划线__)。
值类型表示值介于 -2^63 ( -9,223,372,036,854,775,808) 到2^63-1(+9,223,372,036,854,775,807 )之间的整数。
printf("%I64d
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值