很简单的一道题,考察的知识点有,string容器的使用,stoi函数的使用
坑点如下
1,一个数能整除两个数的乘积,则这个数可以分别整除两个数
2,注意零不能做分母,否则会出现浮点错误。
3,string中的函数,获取字符串的子串,参数分别是初始位置和长度。
pre=temp.substr(0,num/2);
整体代码如下
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
int n,num;
int k1,k2,k3;
int main(){
scanf("%d",&n);
for(int i=0;i<n;i++)
{
string temp,pre,after;
cin>>temp;
num=temp.size();
pre=temp.substr(0,num/2);
after=temp.substr(num/2,num/2);
k1=stoi(pre);
k2=stoi(after);
k3=stoi(temp);
if(k1*k2!=0&&k3%(k1*k2)==0)
printf("Yes\n");
else
printf("No\n");
}
return 0;
}