終於知道是如何進行在線判斷的了

一世英明啊,int 的a+b都提交了5次

今天實在是搞不懂在線判分是如何判的,溜到四川大學的ACM網站上去看看到底這個判分是如何進行的。

第一次,寫出

#include <iostream>
int main()
{
    int a, b;
 cin>>a>>b;
 cout<<a+b<<endl;
    return 0;
}
被判錯,說明必須使用命名空間

第二次忘記修改了,直接把第一次的提交,不用說,肯定是判錯。

第三次,按照提示的答案一步一步的修改了:

#include <iostream>
using namespace std;
int main()
{
    int a, b;
 while(cin>>a>>b){
 cout<<a+b<<endl;}
    return 0;
}

終於AC了。對於到底是運行一次還是運行多次的問題,開始第四次調試:

#include <iostream>
using namespace std;
int main()
{
    int a, b;
 cin>>a>>b;
 cout<<a+b<<endl;
    return 0;
}

判答案錯誤,原來程序只執行一次,那使用臭名遠揚的goto語句呢

#include <iostream>
using namespace std;
int main()
{
    int a, b;
goon:
 cin>>a>>b;
 cout<<a+b<<endl;
 goto goon;
    return 0;
}
判斷是超時,廢話,不斷的goto,程序總是不結束,怎麼會不超時。

再來個c/c++混合的,看到底如何給判斷:

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
    int a, b;
 while(cin>>a>>b)
 printf("%d/n", a+b);
    return 0;
}

暈死,這樣居然也通過了,完完全全的沒想到,除了空間上要慢一些外,別的地方都沒什麼差別。

 

大概總結了提交答案的要求:

1、程序只一次執行;

2、程序必須是符合ANSI標準的。

3、好象可以c和C++混用(在CSDN上看到過有人說不行的)

4、VC++ 和別的非標準C++不被支持,在這個代碼裏沒有測試過,但是沒有個標準總是行不通的,有時間再去測試吧,不過鑑於判定系統多半是linux的,VC就沒戲唱了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章