发牌 胡俊杰买到库洛牌后,要将库洛牌分发给小伙伴们。

发牌 

胡俊杰买到库洛牌后,要将库洛牌分发给小伙伴们。第一天,小伙伴收到 1 张库洛牌;之后两天,(第二天和第三天),每天收到 2 张库洛牌;之后三天(第四 五 六 天),每天收到 3 张库洛牌;之后四天(第七 八 九 十 天),每天收到 4 张库洛牌……;这种发牌方式会一直延续下去。当连续N天收到N张库洛牌后,小伙伴会在之后的N+1天里,每天收到N+1张库洛牌。

输入格式:

在第一行输入发牌的天数n

输出格式:

输出只包含一行一个正整数,即小伙伴收到的总扑克牌数

输入样例:

6

输出样例:

在这里给出相应的输出。例如:

14

 我的java代码实现:

import java.util.Scanner;

public class OK {

    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        System.out.println("请输入天数N:");
        int n = input.nextInt();
        int days=1;//days代表第一天
        int sum=0;
        while (n>=days){//你会发现n-1,n-2,n-3,n-4,比如:减去第一天立马又加上第一天总数,减去之后两天,又加上之后两天的总数。
            n-=days;
            sum+=days*days;//每段的实际总量,有几天就乘以几,比如:day=3,就是3*3=9;
            days++;//day=1时,为第一天;day=2时,等于之后两天;day=3时,等于之后三天。
        }
        //true 会执行大括号的内容
        //可能会有剩余的天数没有加上,那就在这里加上,比如之后四天 中的第七天,在上面的循环中可能会余下来一天,在这里要加上
            sum+=days*n;

        System.out.println("sum="+sum);
    }

}

 我的C++实现:

#include <iostream>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int sum=0;
	int day=1;
	while(n>=day)
	{
		n-=day;
		sum+=day*day;
		day++;
	}
	if(n)
		sum+=day*n;
	cout<< sum;
	return 0;
}

 

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阳光不锈@

如果有帮助的话,打赏一下吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值