哈爾濱理工大學2016新生賽D題

2022-03-03 19:23:14 字數 1062 閱讀 1315

陳月亮從小就熱愛數學,這天老師講到任何乙個正整數n,我們可以很容易的找出n的所有因子,n1,n2,n3...,nk,稱n一共有k個因子(包含1和n本身)。

求出k的值這個問題對於陳月亮來說實在是太簡單了,於是她想要求出n所有因子的因子個數(如n1可能包含n1個因子(包含1和n1本身),n2可能包含n2個因子,...,nk可能包含nk個因子),然後計算出s的值:

第一行為乙個整數t(t <= 10000),代表測試資料的組數。

接下來t行每行乙個正整數n(n < 2 ^ 31)。

對於每組測試資料,輸出s的值。

sample input

9 sample output

36 

#include #include 

using

namespace

std;

const

int size=100000; //

最大行列數

int a[size],b[size]; //

分別儲存行和與列和

intmain()

for(i=0,t=0; i)

if(s!=t)

sort(a,a+r); //

行和排序

sort(b,b+c); //

列和排序

for(i=j=0,t=s=0; i//

從大到小列舉列和

t+=b[c-i-1]; //

當前已列舉的列和總數

s+=r-j; //

當前可用的行和總數

while(j1)

if(sbreak; //

如果可用行和小於當前列和則不可能有解

} printf(i==c?"

yes\n

":"no\n

");//

輸出答案

}

return0;

}

哈爾濱理工大學2016新生賽K題

小明這個人特別無聊,他喜歡把乙個字串以乙個奇怪的姿勢壓縮起來。他會把連續的字元表示成字元和數字的形式,而且他用的數字還都是一位的!比如下面這個例子 a12 表示的是 aaaa 也就是說壓縮後的字串裡的每個數字表示重複最後乙個出現的字元數字次,就好像上面的例子。現在給你一些被無聊的小明壓縮過的字串,你...

哈爾濱理工大學2016新生賽I題

這次我們要寫乙個簡單的行編輯器,當按下 時代表按下了一次退格符,當按下 時代表乙個退行符 使當前行的字元全部無效 例如,假設從終端接收了這樣的兩行字元 whil lr e s s outcha putchar s 則實際有效的是下列兩行 while s putchar s 請你編寫乙個程式,輸出實際...

哈爾濱理工大學2016新生賽G題

fbi tree的描述如下 我們可以把由0和1組成的字串分為3類,全0的串成為b串,全1的串成為i串,既含0又含1的串則稱為f串。fbi樹是一種二叉樹,它的節點型別也包括f串節點 b串節點和i串節點三種。由乙個 長度為2 n的01串s可以構造出一顆fbi樹t,遞迴的構造方法如下 1 t的根節點為r,...