牛牛在註冊不同的**時,總是會使用不同的密碼來保證他的賬號安全。
為了保證他的密碼強度,牛牛使用他的「字串篩選器」來測試密碼的強度。
具體來說,他先將輸入的字串篩選分成四部分。
第一部分僅由小寫英文本母組成
第二部分僅由大寫英文本母組成
第三部分僅由0到9的數字組成
第四部分由其餘特殊字元組成
這四部分要保留它們在原字串中的相對順序。
比如將"1q2w3e4r5"這個字串進行篩選後
四部分分別為:「qw」、「er」、「123456」、"{}"。
然後只要某一部分不為空,牛牛就認為他的密碼等級高1級。
密碼等級最低為1級,最高4級。
例如"asda@123"的密碼等級為4,"20020101"的密碼等級為1。
請幫助牛牛判斷他註冊賬號時的密碼等級,以及該密碼做字串篩選後的結果。
僅一行乙個字串s,表示牛牛的密碼。
首先輸出一行"password level:x",x表示牛牛的密碼等級,最低為1級,最高4級。
接下來輸出4行,表示四部分的篩選結果,輸出時要注意保留它們在原字串中的相對順序,如果某一部分為空串,則改為在該行輸出"(null)"。
輸入
123456
輸出password level:
1(null)
(null)
123456
(null)
輸入
pass_word
輸出
password level:
3assord
pw(null)
_
對於20%20%的測試資料,保證僅有小寫英文本母組成,且1≤∣
s∣
≤100
1≤∣s∣≤100
1≤∣s∣≤
100對於40%40%的測試資料,保證僅有大小寫英文本母組成,且1≤∣
s∣
≤100
1≤∣s∣≤100
1≤∣s∣≤
100對於100%100%的測試資料,保證字串是不含空格、回車、或者其他不可見字元的非空字串,且保證字串長度1≤∣
s∣≤1
04
1 ≤ ∣ s ∣ ≤ 10^4
1≤∣s∣≤
104 。
水題,模擬一遍就好了。
要不是為了水部落格我都懶得寫這一題
#include
#include
#include
#include
using
namespace std;
char a[
1010];
char a1[
1010
],a2[
1010
],a3[
1010
],a4[
1010];
int n,n1,n2,n3,n4;
int ok1,ok2,ok3,ok4;
intmain()
printf
("password level:%d\n"
,ok1+ok2+ok3+ok4);if
(strlen
(a1)
) cout
printf
("(null)\n");
if(strlen
(a2)
) cout
printf
("(null)\n");
if(strlen
(a3)
) cout
printf
("(null)\n");
if(strlen
(a4)
) cout
printf
("(null)\n");
}
牛客 牛牛的數列
鏈結 牛牛的數列 時間限制 c c 1秒,其他語言2秒 空間限制 c c 32768k,其他語言65536k 64bit io format lld 牛牛現在有乙個n個數組成的數列,牛牛現在想取乙個連續的子串行,並且這個子串行還必須得滿足 最多隻改變乙個數,就可以使得這個連續的子串行是乙個嚴格上公升...
牛客 牛牛與陣列
牛牛喜歡這樣的陣列 1 長度為n 2 每乙個數都在1到k之間 3 對於任意連續的兩個數a,b,a b 與 a b 0 兩個條件至少成立乙個 請問一共有多少滿足條件的陣列,對1e9 7取模 輸入兩個整數n,k 1 n 10 1 k 100000輸出乙個整數示例1 複製2 2 複製3 示例2複製9 1 ...
牛客網 牛牛的數列
題目描述 牛牛現在有乙個n個數組成的數列,牛牛現在想取乙個連續的子串行,並且這個子串行還必須得滿足 最多隻改變乙個數,就可以使得這個連續的子串行是乙個嚴格上公升的子串行,牛牛想知道這個連續子串行最長的長度是多少。一開始看到這個題,總是被繞進 改變乙個數 中,就想說是不是遍歷陣列,然後每個數都嘗試改變...