BIT2014級軟體學院程式設計 10 的統計

2021-07-10 05:59:53 字數 1967 閱讀 8841

眾所周知,琪露諾(チルノ,cirno)是幻想郷 (げんそうきょう)中首屈一指的天才,可以說⑨就是她的代名詞。

然而如今,她遇到了乙個和⑨有關的難題。你能幫助她麼?

題目是這樣的,給出兩個數 a 和 b (0 <= a <= b <= 10^10000),求 a 到 b 之間(包括a和b)的數字中,有多少個數字是包含9的(例如 19,910 等都是包含9的數字)。

第一行為乙個數字 t (0 < t <= 100) 表示資料組數。

之後的 t 行,每行包含兩個數 a 和 b (0 <= a <= b <= 10^10000)。

對每組資料輸入,輸出乙個數字,表示 a到 b 之間的數字中(包括a和b),有多少個數字是包含9的。(注意:答案可能很大)

20 9

0 100119

感覺基本應該是程設最難的一道題了把,我感覺是。

先轉化成求0-a和0-b有多個數字9

數量很大要用到高精度。用陣列來存數字。

然後比如13012958就是求10000000的9+3000000的9+10000的9+2000的9+958

至於10000000有多少個9就可以直接用公式了。

10:1;100:1*9+10=19;1000:19*9+100;...........................................

然後計算高精度注意一些東西就好了,比如壓縮一下位數,還有應用一下秦九韶公式就好

#include#include#define	mod 100000000

#define maxn 10080

#define end 1300

char a[maxn];

char b[maxn];

int num[maxn];

int ans[3][end+2];//答案陣列

void big_sum(int *a1, int ak)

else break;

//if(a1[end]>mod)

//a1[end]-=mod;

//a1[end-1]++;//為了節省時間複雜度沒有用迴圈,不夠嚴謹,可能全是999999999需要進製

} return;

}void big_cheng(int *a1,int ak)

return;

}void big_jian(int *a1, int *a2, int *a3)

for (i = end;i >0 ;i--) }

return;

}void search_9(int length,int flag)//flag為0 是第乙個數,1是第二個數

;int ans2[end+5]=;

ans1[end]=num[0];

ans2[end]=num[0];

if(num[0]==9)//判斷9

flag9=1;

for (i = 1;i < length;i++)

else

if(num[i]==9)

flag9=1;

} big_jian(ans[flag],ans1, ans2);

return;

}int main()

search_9(la, 0);

// memset(num,0,sizeof(num));

for (i = 0;i < lb;i++)

search_9(lb,1);

big_jian(ans[2], ans[1], ans[0]);

ans[2][end] = ans[2][end] + flag2;

for(i=end;i>=0;i--)

for (i = 0;i <= end;i++)

printf("%d", ans[2][i]);

i++;

while (i <= end)

printf("\n");

} return;

}

BIT2014級軟體學院程式設計 12 程式設計珠璣

你有一條項鍊,它由 n 個隨機排列的紅 白和藍色的珠子組成 3 n 350 下面的例子展示了兩條 n 29 時的項鍊 1 2 1 2 r b b r b r r b r b b b r r b r r r w r b r w w b b r r b b b b b b r b r r b r b r...

BIT2014級軟體學院程式設計 20 穿越矩陣

20 穿越矩陣 現在有乙個 m n 的整數矩陣,每一格上有乙個數字。請你編寫乙個程式計算出一條從左到右穿過矩陣的路徑,並使此路徑的費用最小。路徑的花費是指這條路徑所穿越的所有單元格中的數字之和。路徑從矩陣的左側的第一列的任意單元格開始,逐步穿過矩陣到達最右側的一列的任意單元格。每一步是指從某單元格進...

哈爾濱理工大學軟體學院ACM程式設計全國邀請賽

簡單做個記錄,因為賬號登不上了。想看 的請繞行 a 網路流。被自己估計的記憶體和時間嚇住了mdzz。b 一上來就開了這道題 c 自己讀錯題目了,簡直zz。dp i j k dp i j k 表示用j j 個硬幣得到1 i role presentation style position relati...