1、
出現time limit exceed問題
答:三種原因:1、程式死迴圈或太多的迴圈;2、對極限狀況計算量太大,需要優化程式,如對10000個以上進行排序必須使用快速排序;3、程式錯了。還有一種原因:題目中說n是整數,可能輸入0啊或-10啊,不一定都是正數,也可能n=10億之類的。你迴圈就累死你。。。
還有一種情況就是,如果
cout不行,那就換c語言!!!
2、presentation error : 答案基本正確,但是格式不對。
答:出現這種問題主要是輸出格式的問題,主要是控制最後乙個輸出時的格式,後面不能有空格。
3、對於多組輸入資料輸出結果
答:一般是每組就要對應乙個結果
4、出現超時的處理技巧
答:(1)對於while(1){},一般會出現超時,可以先有乙個while(cin>>x)
詳見1115.
(2)還有,就是實在不行就選擇c語言的輸入方式。
(3)對於scanf輸入方式,如果不是陣列,
必須有「&」符號
while(scanf(
「%d %d」,
&a,&b
)){}
5、對於多組輸入且結束符是(0,0)
答:可能不需要儲存其他的資訊,只需要將結果顯示出來即可。
while(cin>>x>>y&&(x||y))
while(cin>>x>>y&&(x||y)),可以用兩組輸入資訊。
6、sort()函式
答:其標頭檔案是
7、對於題中多組輸入對應多組輸出的
答:每輸入一組則就輸出一組結果。
如:8、
對於題中有講到資料的範圍的,一定要處理邊界的情況!!!
答:如:接下來有t行,每行有乙個數字n(0<=n<=10^8),表示要求的二進位制串。
,則一定要考慮到
n為0的情況輸出的結果!!
9、輸入字串
答:char array[100];
while(scanf(「%s
」,array)!=eof){}
10、含有malloc(),要包含標頭檔案
11、引數引用的情況(樹)
12、對於一些過程,不必保留中間資料,只要知道結果。如:開門人和關門人
13、理解結束條件
答:(1)當讀到'#'時輸入結束,相應的結果不要輸出。
1021
(2)注意(0, 0)不作為任何乙個測試用例裡面的點。乙個沒有點的測試用例標誌著整個輸入的結束。
1020 \\while(cin>>x>>y&&(x||y))
14、讀入含有空格的字串,可用gets()函式;
15、對於sort()函式,其標頭檔案
16、楊輝三角形初始化
void init()//初始化,將楊輝三角形儲存在
f[1000][1000]中
int i,j;
f[2][1] = f[2][2] = 1;
for(i=3;i<1000;i++)
f[i][1] = f[i][i] = 1;
for(j=2;j17、#include
using namespace std;
int main()
int num[2000];
int i,a,b,x,y,len,n;
while(cin>>n)
for(i=0;i<2*n;i++)//存入陣列
cin>>a>>b;
num[i] = a;
i++;
num[i] = b;
x = num[0];//初始化x,存
x的最小值
y = num[1];//初始化y,當
x相等時,存
y的最小值
//len = sizeof(num)/sizeof(num[0]);
len = 2*n;
//for(i=0;i// cout<<"hello"<
for(i=2;iif(num[i]x = num[i];
y = num[i+1];
i = i+2;
continue;
//cout<<"hello"if(num[i+1]y = num[i+1];
i = i+2;
continue;
else
cout18、氣泡排序
答:n個資料,進行
n-1輪排序,每輪進行
n-1-i
次交換。如:
10個資料,則進行
9輪排序,每輪進行
9-i次交換。
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
if(a[j]>a[j+1])//大數下沉
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
19、對於陣列,scanf("%d",&a[i]);
20、c語言中,system("pause");在同檔案#include中。
問:我的程式是如何輸入又是怎樣輸出的?
答:你的程式應該是用stdio輸入(
標準的輸入流
),輸出應該是用
stdout輸出(
標準的輸出流
).比如說
:你可以使用
c 裡面的
scanf
和 c++
裡面的cin
來讀入,而使用
c 裡面
printf
或 c++
裡面的cout
來寫出。 你提交的程式將不允許進行任何檔案的操作。你有可能為此而得到
runtime error 或者wrong answer。 值得注意的是:g++
中的 i/o
操作,是基於比較複雜的實現模式,相對於
scanf
和 printf
而言,cin
和cout
要慢很多。 經驗表明他們之間的差異在當你使用
g++
作為編譯器的時候顯得尤為突出。所以當乙個問題要求有比較大量的輸入和 輸出時,
cin
和 cout
將會導致
time limit exceed !
21、值得注意的是:對64-bit integers
,請使用 long long 進行申明,gnu
不支援__int64,
輸入輸出使用
lld.例如:
long long a;
scanf("%lld",&a), printf ("%lld",a);
TensorFlow的一些錯誤解決
錯誤描述 nodedef mentions attr truncate not in opy dstt attr srct type attr dstt type nodedef tacotron model inference locationsensitiveattention sequence...
python版本切換 及一些錯誤解決 記錄命令
使用的是anaconda來管理python 檢視系統中所安裝的python版本資訊 conda info e 檢視python版本資訊 source activate root 切換python 3.6版本 1.由於centos自帶py2,我們又安裝了anaconda,配置了環境變數,導致pip 或...
SVN 遇到的一些錯誤解決方案
1 在commit的時候出現錯誤 不能開啟檔案 e svn repository svn db txn current lock 拒絕訪問。解決辦法 為e svn repository目錄設定寫許可權,使用者組 administrator users 需要有修改 寫入許可權。開啟e svn repo...