如何在竞争性编程网站(如SPOJ)中处理输入/输出格式?

时间:2015-05-22 18:35:42

标签: c++ c

大多数问题的解决方案格式是 1)输入测试用例号 2)给出'测试用例'的输入数量
3)立即输出每个测试用例的答案

Example  
3(Total test cases)  
12 3( test case 1)  
32 4( test case 2)  
65 1(test case 3)  

output:  
4(solution to test case1)  
3(sol to tc2)
8(sol to tc3)

一旦我计算出每个测试用例的答案,我是否需要将其存储在某处直到所有测试用例都结束然后逐行显示答案?

如果我正确思考,我应该使用数组来存储每个测试用例的解决方案,然后在最后显示数组。替代解决方案,输入测试用例并打印解决方案是我所拥有的。但在线评判似乎并未接受这一点。我如何在c / c ++中处理这个问题。在python中它应该很简单。

1 个答案:

答案 0 :(得分:0)

您无需存储结果。在计算结果时立即打印结果。 stdinstdout是不相互干扰的独立流。 c中SPOJ程序的一般结构如下:

int main(void) {
    ....
    int tc;
    scanf("%d", &tc); // Read number of testcases
    for(i=0; i<tc; i++)
    {
        readInput(&input...);
        computeResult(input...., &output....);
        printResult(output....);
    }
    return 0;
}