devC++测试没问题,但洛谷全部不通过?我懵了!!

P2669 [NOIP2015 普及组] 金币

endgo @ 2022-05-10 23:24:03


#include<iostream>
using namespace std;

int k; //总天数 
int main(){
    scanf("%d",&k);
    int n=0,s=0,ans; 
    while(s<k){
        n++;
        ans+=n*n;
        s+=n;
    }
    //注意退出条件n变大了1 
    if(s>k){
        s=s-n;
        ans=ans-n*n;
        ans=ans+(k-s)*n;    
    }
    cout<<ans;
    return 0;
}

by Raymondzll @ 2022-05-11 07:45:58

@endgo ans没有初始化


by 王梓涵 @ 2022-05-11 08:10:32

int n=0,s=0,ans; 

改为

int n=0,s=0,ans=0; 

by Syamoe @ 2022-05-11 08:13:42

没初始化的ans是一个随机值

但是我们期望的是0,因此请初始化


by endgo @ 2022-05-11 19:34:14

@Raymondzll 谢谢


by bbbbbba @ 2022-12-24 18:15:01

我要尿尿!


by 1000YMH @ 2023-07-27 09:43:43


#include<bits/stdc++.h>
using namespace std;
int main(){
    int a[10001],n,s=1,ans=0;cin>>n;
    for(int i=1;i<=n;i++){
        if (s > n) break;
        for(int j=1;j<=i;j++){
            a[s]=i;s++;  
            if (s>n) break;
        }
    }
    for(int i=1;i<=n;i++)ans+=a[i];
    cout<<ans<<endl;
    return 0;
}

|