題目描述:
蘭博和提莫閒聊之後,回歸到了他們的正題,約德爾人的未來。
說起約德爾人的未來,黑默丁格曾經提出了乙個約德爾測試,將約德爾人的歷史的每個階段都用乙個字元表達出來。(包括可寫字元,不包括空格。)。然後將這個字串轉化為乙個01串。轉化規則是如果這個字元如果是字母或者數字,這個字元變為1,其它變為0。然後將這個01串和黑默丁格觀測星空得到的01串做比較,得到乙個相似率。相似率越高,則約德爾的未來越光明。
請問:相似率為多少?
輸入每組輸入資料為兩行,第一行為有關約德爾人歷史的字串,第二行是黑默丁格觀測星空得到的字串。
(兩個字串的長度相等,字串長度不小於1且不超過1000。)
樣例輸入
@!%12dgsa
010111100
輸出輸出一行,在這一行輸出相似率。用百分數表示。(相似率為相同字元的個數/總個數,精確到百分號小數點後兩位。printf("%%");輸出乙個%。)
樣例輸出
66.67%
#include
#include
#include
#include
#include
#include
using
namespace std;
string a, b;
bool
isalph
(char
&c)bool
isnum
(char
&c)bool
isone
(char
&c)int
main()
double ans = cnt *
100.0
/ l;
printf
("%.2lf%%\n"
, ans)
;//2保留兩位小數,lf意思是double型
}
約德爾測試
l1 raw input l2 raw input l3 for i in range len l1 if l1 i isalpha or l1 i isdigit else sum 0 for j in range len l3 if l3 j l2 j sum 1 ratio sum float...
約德爾測試
約德爾測試 題目描述 蘭博和提莫閒聊之後,回歸到了他們的正題,約德爾人的未來。說起約德爾人的未來,黑默丁格曾經提出了乙個約德爾測試,將約德爾人的歷史的每個階段都用乙個字元表達出來。包括可寫字元,不包括空格。然後將這個字串轉化為乙個01串。轉化規則是如果這個字元如果是字母或者數字,這個字元變為1,其它...
約德爾測試
只需要判斷歷史字串中對應的應該用1還是0來表示就解決問題。1.接受輸入的可以是字元陣列 char 也可以是字串 string 2.判斷是字母或者數字的時候要用 而不能用連續不等號,這是出錯點 3.相除的時候保證是float型,就要確保運算的過程有float型的變數或者常量參與運算 4.保留小數字數 ...