好奇怪啊,

P2669 [NOIP2015 普及组] 金币

TsH_GD @ 2021-09-21 21:43:46

#include<bits/stdc++.h>
using namespace std;
int k,ans,i,j;
int main(){
    scanf("%d",&k);
    for(i=1;i<=k;i++)
     for(j=1;j<=i;j++){
        ans+=i;
        k--;
     }  
    printf("%d",ans);
}

怎么就40分。。哪里错啊


by TsH_GD @ 2021-09-21 21:55:11

@szkzyc 那新建的变量咋用。。不懂


by Buried_Dream @ 2021-09-21 21:55:55

你每循环一次,你就会比原来少发一天的工资


by Buried_Dream @ 2021-09-21 21:57:06

#include<iostream>
using namespace std;
int main()
{
    int s=0,sum=0,n;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=i;j++)
        {
            sum=sum+i;
            s++;
            if(s==n)
            {
                cout<<sum;
                return 0;
            }
        }
    }
}

by TsH_GD @ 2021-09-21 21:59:49

@看我后面—— 哦,那如果我每次循环完了给k+1可以吗


by Fearliciz @ 2021-09-21 21:59:59

@ღ鬼影迷踪ღ

你也太强了,这种错都找不出来吗我直接谔谔

#include<bits/stdc++.h>
using namespace std;
int k,ans,i,j;
int main(){
    scanf("%d",&k);
    int kk=k;
    for(i=1;i<=k;i++)
     for(j=1;j<=i;j++){
        ans+=i;
        kk--;
        if(kk==0){
            cout<<ans;
            return 0;
        }
     }  
}

by Fearliciz @ 2021-09-21 22:00:19

@ღ鬼影迷踪ღ 不是啊


by Fearliciz @ 2021-09-21 22:01:40

@ღ鬼影迷踪ღ

你得定义一个变量来保存k啊,要不然就会少算了,竟然还能得40pts,数据太水了吧


by TsH_GD @ 2021-09-21 22:02:12

懂了,谢谢谷友大佬的帮助


上一页 |