上海计算机学会2021年4月月赛C++丙组T1巧妙的数

题目描述

如果一个十进制整数能够被它的每一个非零数码整除,则称它为巧妙的数,譬如 102 是一个巧妙的数,因为 102 能被 1 与 2 整除,而 2021 不是,因为它不能被 22整除。给定一个 n,请判定它是否为巧妙的数。

输入格式

单个整数:表示 n。

输出格式
  • 如果 n 是一个巧妙的数,输出 clever
  • 否则,输出 not clever
数据范围
  • 对于 30%的数据,1≤n≤109;
  • 对于 60%的数据,1≤n≤1018;
  • 对于 100的数据,1≤n≤101000。
样例数据

输入:

102

输出:

clever

输入:

2050

输出:

clever

输入:

13

输出:

not clever

题解

本题关键点: 模拟法进行计算,代码如下。

cpp 复制代码
#include<iostream>
#include <string>
using namespace std;
int main() {
	int a[10]; 
	int num[1010];   
	string s;
	cin>>s;
	int len = s.size();
	bool result = true; 
	for(int i = 0;i < s.size();i ++)
	{
		num[i] = s[i] - '0';
		a[num[i]] ++;   
	}		    
	for(int j = 1;j <= 9;j ++){  
		if(a[j]) { 
			int x = 0;  
			for(int i = 0;i < len;i ++){  
				x = x * 10 + num[i];
				x = x % j;
			}
			if(x != 0) {
				result = false; 
				break; 
			} 
		}
	}	
	if(result) {
		cout << "clever" ;
	}else {
		cout << "not clever";	
	}
	return 0;
}
相关推荐
stolentime8 小时前
我常常追忆过去
c++·里程碑纪念
m0_635647488 小时前
Qt打包含有第三方库的软件为应用程序——CQtDeployer
开发语言·数据库·qt
fengenrong8 小时前
20260429
c++·算法
simple-L68 小时前
Vue3 前端开发技术文章大纲
开发语言
南宫萧幕8 小时前
Python与Simulink联合仿真:基于DQN的HEV能量管理策略建模与全链路排雷实战
开发语言·人工智能·python·算法·机器学习·matlab·控制
千寻girling8 小时前
滑动窗口刷了快一个月(26天)了 , 还没有刷完. | 含(操作系统学什么的Java 后端)
java·开发语言·javascript·c++·人工智能·后端·python
apollowing8 小时前
启发式算法WebApp实验室:从搜索策略到群体智能的能力进阶(优)
算法·启发式算法·web app
曾凡玉@8 小时前
Python 并发编程系统笔记
开发语言·笔记·python
代码中介商8 小时前
C语言核心知识完全回顾:从数据类型到动态内存管理
c语言·开发语言
故事还在继续吗9 小时前
C++多线程与多进程编程
开发语言·c++