【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

题解

cpp 复制代码
#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";
	}
}
相关推荐
程序猿乐锅30 分钟前
从0-1一文详解RabbitMQ
java·分布式·后端·中间件·rabbitmq·ruby
考虑考虑4 小时前
JDK26中的List.ofLazy()
java·后端·java ee
小蒜学长4 小时前
基于SpringBoot的公寓报修管理系统的设计与实现(代码+数据库+LW)
java·spring boot·后端·公寓报修管理系统·多角色协同
for_ever_love__4 小时前
MySQL 主从复制讲透:binlog 原理、搭建步骤与读写分离
java·数据库·mysql·binlog·读写分离·原理·主从复制
Nil2086 小时前
leetcode 118杨辉三角
算法·leetcode·职场和发展
小π军6 小时前
操作系统面试题
java·linux·服务器
倔强的石头1067 小时前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
NeilYuen7 小时前
【C++】STL源码仿写(二):vector
开发语言·c++
Shaoshing7 小时前
ThreadLocal
java·jvm·threadlocal