码蹄集——平方根X、整除幸运数
目录
MT1075 平方根X
MT1078 整除幸运数
MT1075 平方根X
知识点:
上取整:ceil;下取整:floor;四舍五入:round
判断是否为完全平方数的方法:利用sqrt函数结果为double,将其结果相乘,若为原来的数,即为完全平方数,否则不为
#include<bits/stdc++.h>using namespace std;int main()
{int x;cin>>x;double tmp=sqrt(x);int ans;if(tmp*tmp!=x)ans=floor((int)tmp);elseans=(int)tmp;printf("%d",ans);return 0;}
MT1078 整除幸运数
要点:
要能使n被幸运数整除,则遍历的幸运数一定小于n
注意!!check函数中 if 语句一定是 && 不能是 || ,若是 || ,当该数为7时出现判断错误
#include<bits/stdc++.h>using namespace std;bool check(int a)
{string s=to_string(a);for(int i=0;i<s.size();i++)if(s[i]!='4'&&s[i]!='7')return false;return true;
}
int main()
{int n;cin>>n;bool flag=0;for(int i=4;i<=n;i++){if(check(i)){if(n%i==0){cout<<"YES"<<endl;return 0;}}}cout<<"NO"<<endl;return 0;
}