L1 017 到底有多二

2021-07-28 01:51:03 字數 920 閱讀 3577

乙個整數「犯二的程度」定義為該數字中包含2的個數與其位數的比值。如果這個數是負數,則程度增加0.5倍;如果還是個偶數,則再增加1倍。例如數字「-13142223336」是個11位數,其中有3個2,並且是負數,也是偶數,則它的犯二程度計算為:3/11

*1.5

*2*100

%,約為81.82

%。本題就請你計算乙個給定整數到底有多二。

輸入第一行給出乙個不超過50位的整數n。
在一行中輸出n犯二的程度,保留小數點後兩位。
-13142223336
81.82

%

注意一下輸出格式和精度問題就可以了。
#include

#include

int main() ;

double p = 0;

int size = 0;

int num = 0;

int i = 0;

double isfushu = 1.0,isoushu = 1.0;

scanf("%s", str);

size = strlen(str);

if (str[0] == '-')

if (((str[strlen(str) - 1] - '0') % 2) == 0)

for (i = 0; str[i] != '\0'; i++)

}p = (double)num / (double)size * isfushu * isoushu * 100.0;

printf("%.2lf%%\n", p);

return

0;}

L1 017 到底有多二

時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 乙個整數 犯二的程度 定義為該數字中包含2的個數與其位數的比值。如果這個數是負數,則程度增加0.5倍 如果還是個偶數,則再增加1倍。例如數字 13142223336 是個11位數,其...

L1 017 到底有多二

乙個整數 犯二的程度 定義為該數字中包含2的個數與其位數的比值。如果這個數是負數,則程度增加0.5倍 如果還是個偶數,則再增加1倍。例如數字 13142223336 是個11位數,其中有3個2,並且是負數,也是偶數,則它的犯二程度計算為 3 11 1.5 2 100 約為81.82 本題就請你計算乙...

L1 017 到底有多二

乙個整數 犯二的程度 定義為該數字中包含2的個數與其位數的比值。如果這個數是負數,則程度增加0.5倍 如果還是個偶數,則再增加1倍。例如數字 13142223336 是個11位數,其中有3個2,並且是負數,也是偶數,則它的犯二程度計算為 3 11 1.5 2 100 約為81.82 本題就請你計算乙...