【C++ 真题】B2078 含 k 个 3 的数
含 k 个 3 的数
题目描述
输入两个正整数 m m m 和 k k k,其中 1 < m ≤ 1 0 15 1 \lt m \leq 10^{15} 1<m≤1015, 1 < k ≤ 15 1 \lt k \leq 15 1<k≤15 ,判断 m m m 是否恰好含有 k k k 个 3 3 3,如果满足条件,则输出 YES
,否则,输出 NO
。
输入格式
输入一行,为两个整数 m , k m,k m,k,中间用单个空格间隔。
输出格式
满足条件,则输出 YES
,否则,输出 NO
。
样例 #1
样例输入 #1
43833 3
样例输出 #1
YES
题解
#include<iostream>
using namespace std;int main(){int m, k, i=0;cin>>m>>k;if(m%19==0){while(m!=0){//每一位数int a = m%10;if(a==3){i+=1;}else{i=i;}m/=10;}if(i==k){cout<<"YES";}else{cout<<"NO";}}else{cout<<"NO";}
}