1 条题解

  • 0
    @ 2025-4-27 18:52:06

    C++ :

    #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;
    //        cout<<z<<endl;
            if (floor(sqrt(z))==sqrt(z))ans+=1;
        }
        cout<<ans;
        return 0;
    }
    

    Pascal :

     var
        n, k, sum, i, t, ct:longint;
    begin
     
       readln(n,k);
     
        sum := 0;
        ct := 0;
        for i := 1  to k do 
            sum := sum + i;
        t := trunc(sqrt(sum));
        if t * t = sum then
            inc(ct);
        for i := 2  to  n - k + 1 do
        begin
            sum := sum+ k;
            t := trunc(sqrt(sum));
            if t * t = sum then
                inc(ct);
        end;
         writeln(ct);
    end.
    
    
    
    • 1

    信息

    ID
    1156
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者