小金掰呀掰不够玉米

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_43886377/article/details/100590369

Problem Description
众所周知,C语言的学习是我们程序设计基础的重点和主要内容。
有一天,小金(a1s4z5)觉得好饿、好饿,于是去地里找玉米吃。他拿了一个很大的背包,可以装下很多很多玉米。
他掰玉米有一个习惯,第1次的时候掰1个,第2次的时候掰2个,第3次的时候掰3个…第n次的时候掰n个,他打算掰完第n次的时候就回家吃玉米。
在苞米地里,他越掰越高兴越掰越高兴,终于当他摩擦到要停不下来的时候,发现自己根本背不动他的背包了。于是他要将前m次掰的玉米全都扔掉才能回家开饭。但是小金的数学很不(li)好(hai),请你帮他算一算袋子里还有多少玉米。

Input
多组输入。
每组输入两个空格隔开的整数n和m,含义如题意描述。(0 < m < n < 10^4)

Output
输出小金的背包里最后剩下多少玉米。输入输出各占一行,保证数据合法。

Sample Input
5 2
6 3
Sample Output
12
15
Hint
解法一:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n,m,i,s1,s2;
    while(scanf("%d %d",&n,&m)!=EOF)
    {
        s1=0;
        s2=0;
        for(i=1; i<=m; i++)
            s1=s1+i;
        for(i=1; i<=n; i++)
            s2=s2+i;
        printf("%d\n",s2-s1);
    }
    return 0;

}

解法二:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n,m,i,s;
    while(scanf("%d %d",&n,&m)!=EOF)
    {
        s=0;
        for(i=m+1; i<=n; i++)
            s=s+i;
        printf("%d\n",s);
    }
    return 0;

}

猜你喜欢

转载自blog.csdn.net/weixin_43886377/article/details/100590369