当前位置:   article > 正文

蓝桥杯:真题讲解1(C++版)附带解析

蓝桥杯:真题讲解1(C++版)附带解析

约数个数

来自:2020年十一届省赛大学C组真题(共9道题)

分析:

约数是什么?

整数a/整数b(b!=0),能够整除,b就是a的约数。a称为b的倍数。   约数也称为因子。

代码:

  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. // 请在此输入您的代码
  6. int num = 1200000;
  7. int ans = 0;
  8. for(int i=1;i <=num;i++){
  9. if(num % i ==0) ans++;
  10. }
  11. cout << ans;
  12. return 0;
  13. }

特别数的和

来自:2019年十届省赛大学B组真题(共10道题)

分析:利用取余和除法判断每一位是否符合即可。

代码:

  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4. // 请在此输入您的代码
  5. int n,j,k; //j和k为辅助作用
  6. cin >> n;
  7. int ans=0;
  8. for(int i=1; i<=n; i++) {
  9. j=i;
  10. while(j) {
  11. k= j%10; //先从个位看
  12. if(k==2 || k== 0 || k==1 || k==9) {
  13. ans+=i;
  14. break;
  15. }
  16. j =j/10; //不符合条件看十位、百位...
  17. }
  18. }
  19. cout << ans;
  20. return 0;
  21. }

年号字串

分析:用excel更好求解:

按行填充到2019,excel使用的就是这个定义规则。

结果:

代码:

  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. // 请在此输入您的代码
  6. cout << "BYQ";
  7. return 0;
  8. }

奇妙的数字

来自:2015年六届省赛大学C组真题(共6道题)

分析:直接暴力求解,使用C++的api。

代码:

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main()
  4. {
  5. // 请在此输入您的代码
  6. for(long long i=1;;i++){
  7. long long num1=i*i;
  8. long long num2=i*i*i;
  9. string str = to_string(num1)+to_string(num2);
  10. sort(str.begin(),str.end());
  11. if(str!="0123456789") continue;
  12. cout << i;
  13. break;
  14. }
  15. }

运行结果是69,我们直接输出69即可。

饮料换购

来自:2015年六届省赛大学C组真题(共6道题)

分析:按照题意模拟即可。

代码:

  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4. // 请在此输入您的代码
  5. int n;
  6. cin >> n;
  7. int ans=n;
  8. while(n>=3) {
  9. int yu=n%3;
  10. n=n/3;
  11. ans+=n;
  12. n+=yu;
  13. }
  14. cout << ans;
  15. return 0;
  16. }

奖券数目

来自:2015年六届省赛大学B组真题(共6道题)

分析:根据题意模拟即可。

代码:

  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. // 请在此输入您的代码
  6. int ans=0;
  7. for(int i=10000;i<=99999;i++){
  8. string str = to_string(i);
  9. if(str.find('4') == -1){ //等于-1即没找到
  10. ans++;
  11. }
  12. }
  13. cout << ans;
  14. return 0;
  15. }

pow函数的使用

用于计算计算x的y次幂:double pow( double base, double exp );

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/143972
推荐阅读
相关标签
  

闽ICP备14008679号