涛神的城堡

涛神的城堡

Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other)
Total Submission(s) : 54   Accepted Submission(s) : 13

Font: Times New Roman | Verdana | Georgia

Font Size: ← →

Problem Description

涛神有一个城堡给游客参观,涛神特别的强壮,涛神的强壮值是strong,每个游客也有自己的强壮值,涛神为了赚钱,他会选取多个区间去打劫别人,所以如果比涛神弱的,他就要收取他们的强壮值的差值,但是还是有比涛涛强壮的,所以涛涛打劫那个人的话,涛涛要给那个人他们的强壮值的差值,所以涛涛可以选择打不打劫那个区间的人,(人是可以重复打劫的,区间不行)涛涛最多能赚多少钱呢?

Input

第一行给你三个整型变量n,m,strong(1≤n,m≤10000,1≤strong≤200),
第二行给你n个人的强壮值a1,a2,...,an(1≤ai≤200).
接下来m行给你两个整型变量l,r(1≤li≤ri≤n),代表区间里包括了第l个游客到第r个游客,涛涛可以选择打不打劫这个区间

Output

输出涛涛可以打劫到的最多的钱

Sample Input

5 4 10
9 12 9 7 14
1 2
4 5
3 4
1 4

Sample Output

7

题目有毒,题目说区间不行,但必须按可以取重复的区间才能A;
 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 #define M 10015
 5 #define  ll long long int
 6 using namespace std;
 7 int a[M];
 8 int main(){
 9     int n,m,strong;
10     while(scanf("%d%d%d",&n,&m,&strong)!=EOF){
11         for(int i=1;i<=n;i++){
12             ll t;
13             scanf("%lld",&t);
14             a[i]=a[i-1]+strong-t;
15         }
16         ll cnt=0;
17         for(int i=0;i<m;i++){
18             ll x,y;
19             scanf("%lld%lld",&x,&y);
20             ll sum=a[y]-a[x-1];
21             if(sum>0)
22                 cnt+=sum;
23         }
24         printf("%lld\n",cnt);
25         memset(a,0,sizeof(a));
26     }
27
28     return 0;
29 }
				
时间: 2024-08-25 19:46:34

涛神的城堡的相关文章

JXNU acm选拔赛 涛神的城堡

涛神的城堡 Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total Submission(s) : 42   Accepted Submission(s) : 8 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description 涛神有一个城堡给游客参观,涛神特别的强壮,涛神的强壮值是stro

涛神的游戏

Description 涛神喜欢和队友玩一个游戏,规则如下:数字a,b,c,表示当前的数字是c,两人轮流往这个数上加b,当数字大于等于a时,比赛结束,最后一个加数的人获胜.每次都是由涛神先加,给定数字a,b,c,请你判断涛神最终能否取胜?如果能取胜,输出YES,否则输出NO. Input 数据为多组 第一行一个整数T(1≤T≤1000) 随后有T行,每行包含3个整数a,b,c 1≤b,c<a≤10000 Output 对于每组数据 输出一行"Case #k: result",其中

jxnu acm新生选拔赛

最小的数 Problem Description 定义一种正整数集合K,集合中有N个数,集合中元素Ki(1<=i<=N)是包含i个不同质因子的最小的数.因为Ki可能会很大,所以将集合中所有Ki对10^9+7取余. Input 本题只有唯一一组测试数据,第一行给出N,q,表示K的个数以及q次询问.1<=N<=1000,q<=10^5.接下来q行每行一个正整数(64位整数范围内),请判断其对10^9+7取余后,是否在集合K中. Output 对于每次询问,根据题意输出Yes或No

JXNU 新生选拔赛

1001 最小的数 Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total Submission(s) : 28   Accepted Submission(s) : 4 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description 定义一种正整数集合K,集合中有N个数,集合中元素Ki(1

涛涛的Party

涛涛的Party Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total Submission(s) : 25   Accepted Submission(s) : 12 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description 涛神因为极强,并且特别帅,所以拥有很多美女的联系方式,每

JXNU acm选拔赛 涛涛的Party

涛涛的Party Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total Submission(s) : 21   Accepted Submission(s) : 8 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description 涛神因为极强,并且特别帅,所以拥有很多美女的联系方式,每个

软件工程第二周作业:代码规范和代码复审

0x01 :代码规划的要求 Q:这些规范都是官僚制度下产生的浪费大家的编程时间.影响人们开发效率, 浪费时间的东西.(反驳) 首先,我们需要明确编码规范的定义,编码规范同时包括了编码风格和其它规范(代码设计上的规范,如设计模式.程序设计.模块之间的逻辑关联等). 编码风格,牵扯到“缩进.空格使用.注释.命名习惯”等多方面的因素,是依致特定编程语言制定的软件工程开发的“约定”,而相同的编码风格,可以使得软件开发过程中轻松浏览任意一段代码,充分保证不同的开发人员能够依据统一的编码格式轻松理解代码的逻

[SDOI2009]HH的项链解题报告

原题目:洛谷P1972 题目描述 HH 有一串由各种漂亮的贝壳组成的项链.HH 相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含义.HH 不断地收集新的贝壳,因此,他的项链变得越来越长.有一天,他突然提出了一个问题:某一段贝壳中,包含了多少种不同的贝壳?这个问题很难回答……因为项链实在是太长了.于是,他只好求助睿智的你,来解决这个问题. 输入输出格式 输入格式: 第一行:一个整数N,表示项链的长度. 第二行:N 个整数,表示依次表示项链中贝壳的编号(编号为0

关于怎样获取DevExpress GridView过滤后或排序后的数据集问题(转)

GridView用自带的过滤功能过滤数据后,想要获取过滤后的数据集,有两种方式: 一.笨办法就是循环遍历GridView,根据gridView.GetRow()或者gridView.GetDataRow()(该方法返回DataRow类型,使用于数据源是DataTable)去获取指定handle对应的数据对象. 1.若GridControl绑定的数据源是List类型,可以调用以下方法 /// <summary> /// 获取GridView过滤或排序后的数据集 /// </summary&