zoukankan      html  css  js  c++  java
  • 连续数的和

    题目:

    时间限制 : 1 Sec
    内存限制 : 128 Mb
    提交 : 317
    解决 : 99

    题目描述

    给出两个整数n和k,(2≤n≤70000,1≤k≤n),求出1,2,3,…,n中连续k个数的和,并计算出和为平方数的个数。

    例如n=10,k=3。在1,2,…,10中,连续3个数的和有

    1+2+3=6

    2+3+4=9

    3+4+5=12

    4+5+6=15

    5+6+7=18

    6+7+8=21

    7+8+9=24

    8+9+10=27

    其中和为平方数的仅有9,因为9=3×3。

    输入

    n,k两个整数。

    输出

    一个整数,即1,2,…,n中连续k个数的和为平方数的个数。

    样例输入 

    10 3

    样例输出 

    1
     
    方法:
    1、每个数都可以表示为a+1 a+2 a+3……(每个测试点的1都为1+2+3……)
    2、每次+k,就是在每个数底下+1.
    3、判断+k后的值,如果是平方数就计数器+1.
     
    标程:
    #include<bits/stdc++.h>
    using namespace std;
    int n,k,ans,z;
    int main()
    {
        cin>>n>>k;
        for (int i=1;i<=k;i++)z+=i;
        for (int i=1;i<=n-k;i++)
        {
            z+=k;
            if (floor(sqrt(z))==sqrt(z))ans+=1;
        }
        cout<<ans<<endl;
        return 0;
    }
  • 相关阅读:
    clound R
    ubuntu 下安装查看pdf的工具
    统计门户
    neusoft 东软
    一位做数据分析的老师的blog
    ubuntu 下安装查看pdf的工具
    R语言矩阵转置
    取经难,取真经更难。
    R function
    只针对中英文混合分词的中文分词器
  • 原文地址:https://www.cnblogs.com/leonqqs/p/7083311.html
Copyright © 2011-2022 走看看