description
let's call a number k
-good if it contains all digits not exceeding k
(0, ..., k
). you've got a number k
and an array a
containing n
numbers. find out how many k
-good numbers are in a
(count each number every time it occurs in array a).
input
the first line contains integers n
and k
(1 ≤ n ≤ 100, 0 ≤ k ≤ 9). the i
-th of the following n
lines contains integer a
i without leading zeroes (1 ≤ a
i ≤ 109).
output
print a single integer — the number of k
-good numbers in a.
sample input
input
10 61234560
1234560
1234560
1234560
1234560
1234560
1234560
1234560
1234560
1234560
output
10
input
2 1110
output
1**
#include#includeint main()
a = k - '0';
//printf("a = %d\n",a);
int len, sum = 0, x = 0, bleg = 0, t = 0;
for (i = 0; i < n; i++)
;//這個地方,標記陣列必須要放到函式體內部,開始放在了外部,全域性變數,每當第二次輸入,若第二次長度小於第一次,則不會清零;
bleg = 0; //bleg需要在這裡標記,不能放到外面
len = strlen(s[i]); //printf("len s[%d] = %d\n",i,len);
if (len < a + 1)
else
if (t == a + 1)
}} if (bleg == 1)
}printf("%d\n", sum);
return 0;
}
暑期第一周演算法題(一)
給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。說明 你的演算法應該具有線性時間複雜度。你可以不使用額外空間來實現嗎?示例 1 輸入 2 2,1 輸出 1示例 2 輸入 4 1,2 1,2 輸出 41.基礎思路 我們可以遍歷陣列中的每個數字,如果...
2019暑期集訓第一周小結
特點 一輪搜尋完成後,清空標記陣列的問題 在搜尋的過程中,需要借助標記陣列,來防止重複的訪問。之前採取的方法是,通過標記為1,表示該值被訪問過。但是這樣做不適合多輪的搜尋,因為每輪搜尋結束後,都需要重新把標記陣列清零。解決 每輪搜尋都設定乙個唯一的值 不再侷限於1和0 標記陣列的本質是通過設定不同的...
補題場 codeforece第一周周賽
傳送門 題意 狀態定義f i f 0 表示不選,f 1 表示選擇。狀態轉移f 1 f 0 a,f 0 f 1 a。最終答案為f 1 因為最後一位為加的答案肯定大於為減的。include using namespace std const int n 3e5 10 long long f 2 int ...