OJ的输入输出

额,第一次做OJ感受到了深深的恶意,以为和leetcode一样不用管输入输出,没想到还要自己对输入输出进行处理。

白瞎了早上五点起来做笔试,在本地ide调好了发现ace不了可太蛋疼了。长个教训,做个总结吧。

1 用Python处理:

OJ一般是由输入输出两个文件的。这里会直接将所有的case读进来,比如第一行第二行是第一种case,那么第三行第四行就是第二个case,以此类推。

在本地调试的时候,Juypter notebook中需要用StringIO进行输入,不然无法手动输入。

输入都是字符串,需要进行类型转换。

from io import StringIO  
import sys
 
doc = '''3
1 2 3
4 5 6
7 8 9
'''
 
sys.stdin = StringIO(doc)

for line in sys.stdin:
    a = line.split()
    print(a)

输出的时候也需要注意空格和换行符,有时候和输出文件匹配过于严格,导致一个空格使得无法通过。

2 C++处理

处理大批量数据的时候,scanf比起cin快得多

计算a+b

输入第一行包括一个数据组数t(1 <= t <= 100)
接下来每行包括两个正整数a,b(1 <= a, b <= 10^9)

输入:
2
1 5
10 20
输出:
6
30


#include<iostream>
 
using namespace std;
 int main(){
    int t;
    cin>>t;
    for(i
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值