平方和-c++

  1. 题目:
    小明对数位中含有 2、0、1、9 的数字很感兴趣,在 1 到 40 中这样的数包括 1、2、9、10 至 32、39 和 40,共 28 个,他们的和是 574,平方和是 14362。

注意,平方和是指将每个数分别平方后求和。

请问,在 1 到 2019 中,所有这样的数的平方和是多少?

  1. 解题思路:
    与上一道题特别数的和解题思路类似,唯一需要特别注意的是由于是求取平方和,所以可能数字过大,超出int类型的范围,需要将sum设成long long int型。

  2. 代码实现:

点击查看代码
#include <iostream>
using namespace std;
int f(int a)
{
  int j;
  while(a){
    j=a%10;
    if(j==2||j==0||j==1||j==9){
      return 1;
    }
    a /= 10;
  }
  return 0;
}
int main()
{
  long long  sum=0;
  for(int i=1;i<=2019;i++){
    if(f(i)){
      sum += i*i;
    }
  }
  cout<<sum<<endl;
  // 请在此输入您的代码
  return 0;
}
posted @   自然力  阅读(746)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
点击右上角即可分享
微信分享提示