神犇营-42-含k个3的数

【小韦同学@神犇营-42-含k个3的数】

题目:

描述

输入两个正整数 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。

输入样例1

43833 3

输出样例1

YES

题解:

/*********************************************************************

* 题目:神犇营-42-含k个3的数 
* 作者:小韦老师
* 邮箱:weichangying_wcy@163.com

* 题解:
	思路:
	取m的每一位,若为3则计数器加1。结束之后,判断一下两个条件:
	① 计数器等于k
	② m能被19整除
	若以上两个条件都满足,则输出"YES",否则输出"NO"。 

*********************************************************************/

#include <bits/stdc++.h>

using namespace std;

int main() {
	
	int m, k;
	cin >> m >> k;
	int num_k = 0;  // 计数器,记录3的个数 
	int temp = m;  // 不要直接用m去运算,因为循环结束时值会为0 
	while (temp != 0) {
		if (temp % 10 == 3) num_k++;
		temp /= 10;
	}
	if (num_k == k && m % 19 == 0) cout << "YES";
	else cout << "NO";
	return 0;
}

我是小韦同学,企者不立,跨者不行,每天进步一点点。
欢迎大家多多交流,如果发现有错误,请多指正。有疑问的同学也可以留言评论或者发邮件。
邮箱:weichangying_wcy@163.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值