切換
舊版
前往
大廳
主題

ZeroJudge - e840: P7. 密碼強度測試(Passwords) 解題心得

Not In My Back Yard | 2020-03-20 00:08:28 | 巴幣 2 | 人氣 95

題目連結:


題目大意:
給定一個只包含英文字母以及數字的字串(1 ≦ 長度 ≦ 20),代表一個密碼。

現在給定一些加減分的規則:
請根據上述的規則輸出該密碼字串的分數。



範例輸入:
範例輸入一:
123456

範例輸入二:
Q8e8e8QaPpLe

範例輸入三:
2020Happy2000


範例輸出:
範例輸出一:
9

範例輸出二:
79

範例輸出三:
68


解題思維:
這題解法當然沒什麼特別的,就是照著規則走而已。

但是可以看到全部的規則都可以塞進同一個迴圈一起計算。除了英文、數字的計數,連續數字也可以,只要跟當前位置的上一個位置比是不是數字就好。如果上一個位置也是數字的話就分數就 - 1 。

然後可以用一些神祕的語法,例如說用「!」運算子把數字壓成只有 0 和 1 、「? : 」三元運算子等,不需要好幾個 if 。但相對的程式可讀性就會降低不少XD

此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

相關創作

更多創作