当前位置:首页 > 题解目录 > 正文内容

【题解】跳格子2

亿万年的星光3年前 (2023-05-20)题解目录20401

【题目描述】

地面上有一排长度为n的格子1-n,每个格子上都有一个数xi,开始时你在位置0,每次你可以向前跳1-2格,然后取走格子上的数,直到跳到位置n+1。取走的数的和就是你的得分,现在你想知道你可能的最小得分是多少。

【输入描述】

一行四个整数n,A,B,C(n≤100000,0≤A,B,C≤10000),其中n表示格子的数量。x[i]由如下方式生成:
    for (int i = 1; i <= n; i++){
    int tmp = ((long long)A * i * i + B * i + C) % 20000;
    x[i] = tmp - 10000;

    }

【输出描述】

一行一个整数ans表示可能的最小得分。

【样例输入】

3 1 1 1

【样例输出】

-29977

【参考答案】

#include<bits/stdc++.h>
using namespace std;
int x[100010],n,A,B,C;
int main(){
	cin>>n>>A>>B>>C;
	for (int i = 1; i <= n; i++){
    	int tmp = ((long long)A * i * i + B * i + C) % 20000;
    	x[i] = tmp - 10000;
    } 
    for (int i = 2; i <= n+1; i++){
    	x[i] = min(x[i-1],x[i-2]) + x[i];
    }
    cout<<x[n+1];
	return 0;
}


扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

标签: 动态规划
分享给朋友:

相关文章

【题解】跳格子

【题目描述】地面上有一排长度为n的格子1-n,每个格子上都有一个数xi,开始时你在位置0,每次你可以向前跳1-2格,然后取走格子上的数,直到跳到位置n+1。取走的数的和就是你的得分,现在你想知道你可能...

2021年崂山区程序设计竞赛题(初中组)

2021年崂山区程序设计竞赛题(初中组)(比赛时间90分钟,试题满分300分)题目名称区间和区间位数的个数有序数组保存文件sumdigitarray输入文件名sum.indigit.inarray.i...

【题解】滚动的榜单

【题目描述】某比赛的成绩,是依次出现的,而每个选手的成绩依次公布的时候,榜单都会刷新一遍,就能看到该选手在当前榜单加入时,所在的名次。下面给出了榜单选手的成绩,这里想知道,对于某个选手,求该选手在加入...

【题解】赢得比赛需要的最少训练时长

【题目描述】你正在参加一场比赛,给你两个 正 整数 initialEnergy 和 initialExperience 分别表示你的初始精力...

【题解】最大配对

题目描述      给出2个序列A={a[1],a[2],…,a[n]},B={b[1],b[2],…,b[n]},从A、B中各选出n个元素进行一一配对(可以不按照原来在...

【题解】发工资

【题目描述】财务处的小李最近就在考虑一个问题:如果每个员工的工资额都知道,最少需要准备多少张人民币,才能在给每位员工发工资的时候都不用员工找零呢?这里假设程序猿的工资都是正整数,单位元,人民币一共有1...