編程題#1:含k個3的數
來源: POJ (Coursera聲明:在POJ上完成的習題將不會計入Coursera的最后成績。)
注意: 總時間限制: 1000ms 內存限制: 65536kB
描述
輸入二個正整數m 和 k,其中1 < m < 100000,1 < k <5 ,判斷m 能否被19整除,且恰好含有k個3,如果滿足條件,則輸出YES,否則,輸出NO。
例如,輸入:
43833 3
滿足條件,輸出YES
如果輸入
39331 3
盡管有3個3,但不能被19整除,也不滿足條件,應輸出NO
輸入
m 和 k 的值,空格間隔
輸出
滿足條件時輸出 YES,不滿足時輸出 NO
樣例輸入
43833 3
樣例輸出
YES
1 #include <iostream> 2 using namespace std; 3 4 int main() { 5 int m, k, count=0; 6 cin >> m >> k; 7 bool right1 = false, right2 = false; 8 if (m % 19 == 0) { 9 right1 = true; 10 } 11 while (m > 0) { 12 if (m % 10 == 3) { 13 count++; 14 } 15 m /= 10; 16 } 17 if (count == k) { 18 right2 = true; 19 } 20 if (right1 && right2) { 21 cout << "YES"; 22 } else { 23 cout << "NO"; 24 } 25 return 0; 26 }
