NOIP201501金币

国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天) ,每天收到两枚金币;之后三天(第四、五、六天) ,每天收到三枚金币;之后四天(第七、八、九、十天) ,每天收到四枚金币……;这种工资发放模式会一直这样延续下去:当连续 N 天每天收到 N 枚金币后,骑士会在之后的连续 N+1 天里,每天收到 N+1 枚金币。
请计算在前 K 天里,骑士一共获得了多少金币。

输入

输入文件只有 1 行,包含一个正整数 K,表示发放金币的天数

输出

输出文件只有 1 行,包含一个正整数,即骑士收到的金币数

--------------------------------------------------------------------------------------------------------------------------------------------------

#include <iostream>
#include <cstdio>
using namespace std;
int a[10000];
int main()
{
    int sum=1,t1=1,temp=0,ans=0,k,i;
    scanf("%d",&k);
    for(i=1;i<=k;i++)
    {
    if(temp<t1)
    {
        a[i]=sum;
        temp++;
    }
    if(temp==t1)
    {
        sum++;
        t1++;
        temp=0;
    }
}
    for(i=1;i<=k;i++) ans+=a[i];
    printf("%d",ans);
    //system("pause");
    return 0;
}

时间: 2024-10-08 00:19:22

NOIP201501金币的相关文章

NOIP201501&amp;02题解

NOIP201501金币 试题描述 国王将金币作为工资,发放给忠诚的骑士.第一天,骑士收到一枚金币:之后两天(第二天和第三天) ,每天收到两枚金币:之后三天(第四.五.六天) ,每天收到三枚金币:之后四天(第七.八.九.十天) ,每天收到四枚金币……:这种工资发放模式会一直这样延续下去:当连续 N 天每天收到 N 枚金币后,骑士会在之后的连续 N+1 天里,每天收到 N+1 枚金币.请计算在前 K 天里,骑士一共获得了多少金币. 输入 只有 1 行,包含一个正整数 K,表示发放金币的天数 输出

求不相邻金币相加和的最大值--动态规划1

求不相邻金币相加和的最大值. 输入n个金币的金币面值(正数自定义),求这些金币不相邻和的最大值. 动态规划问题1 设f(n)为第n个金币数的最大值,f(0)=0,f(1)=a[1],输入的数组从下标为1开始. f(n)=max{a[n]+f(n-2),f(n-1)}. 代码如下: import java.util.Scanner; public class Jin_bi_zui_da_zhi { public static void main(String[] args) { Scanner s

noi 1.5 45:金币

描述 国王将金币作为工资,发放给忠诚的骑士.第一天,骑士收到一枚金币:之后两天(第二天和第三天)里,每天收到两枚金币:之后三天(第四.五.六天)里,每天收到三枚金币:之后四天(第七.八.九.十天)里,每天收到四枚金币--这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币(N为任意正整数). 你需要编写一个程序,确定从第一天开始的给定天数内,骑士一共获得了多少金币. 输入 一个整数(范围1到10000),表示天数. 输出 骑士获得的

求换取零钱的最少金币个数个数--动态规划问题2

输入m个数字(正数,必须含有1.)代表金币的面值,再输入n代表换钱的总额,求换取的最少金币个数. 动态规划问题2 动态规划的基本思想是将待求解问题分解成若干个子问题,先求解子问题,并将这些子问题的解保存起来,如果以后在求解较大子问题的时候需要用到这些子问题的解,就可以直接取出这些已经计算过的解而免去重复运算.保存子问题的解可以使用填表方式,例如保存在数组中. 代码如下: import java.util.Scanner; public class Jin_bin_zhao_ling { publ

[自动化-脚本]001.自动领淘金币:Anyweb模拟操作

通过模拟手工操作的方法领取淘金币.该方法万能且通用,有能力的还可以自行修改脚本. 工具 软件下载 anywebscript.com 方法/步骤 1.安装软件如图所示 2.设置脚本: (1)进入网站:[脚本商店\模拟点击领取淘金币]并复制脚本 (2)打开软件的“新建”按钮 (3)将脚本粘贴到“功能代码”处 3.测试脚本: (1)设置用户名.密码: 方法一:可以直接在脚本中改(仅供测试使用) 方法二:把脚本的用户名.密码那两行去掉,并在下面的测试框中输入用户名.密码(实际使用时请采用方法二) (2)

签到领金币脚本

1 #!/use/bin/env python 2 # -*- coding: utf-8 -* 3 # Author : nick 4 # Desc : v2ex每日签到 5 6 import urllib 7 import urllib2 8 import cookielib 9 import re 10 import sys 11 from bs4 import BeautifulSoup as bs 12 from datetime import datetime 13 14 15 re

CODEVS 2835挖金币

题目描述 Description 这天,小X幸运地获得了一次进行挖金币游戏的机会,规则如下: 在一个N*N的矩形里,有N*N个边长为1的正方形格子.在游戏中取左下角的格子坐标为(1,1),右上角为(N,N).在游戏开始前,每一个格子中都会放入一枚金币,而当游戏开始时,每一个格子中的那一枚金币都会进行一次移动,移动后的横.纵坐标值将分别变为原横.纵坐标值每一位上的乘积.当有金币被移动出格子矩形时,将被游戏方收走.小X将被允许选取M个格子,他将获得他所选取的格子中所有的金币,而他对游戏中获得的金币数

bzoj3293[Cqoi2011]分金币

Description 圆桌上坐着n个人,每人有一定数量的金币,金币总数能被n整除.每个人可以给他左右相邻的人一些金币,最终使得每个人的金币数目相等.你的任务是求出被转手的金币数量的最小值. Input 第一行为整数n(n>=3),以下n行每行一个正整数,按逆时针顺序给出每个人拥有的金币数. Output 输出被转手金币数量的最小值. Sample Input 4 1 2 5 4 Sample Output 4 样例解释 设四个人编号为1,2,3,4.第3个人给第2个人2个金币(变成1,4,3,

检查金币

ACM公司生产金币的设备出了问题,使得最近生产的10批金币的重量出现了波动:本来金币的标准重量是10克,但现在有的可能是11克,有的可能9克,也有可能是10克.  现在只知道同一批金币的重量是相同的,你的任务是要把每批的单枚金币的重量找出来.  你的设备有一个电子秤,但只允许称量一次!  你从第1批中取1枚金币,第2批取3枚,...第i批取3^(i?1)枚...,第10批取3^9枚,总共29524枚.将这29524枚金币放在电子秤上,得到了总重量,就交给你的程序去! 输入 有多个测试序列,每个测