BestCoder Round #47 ($)

1001:Senior‘s Array

题目大意:

  在数组中改一个合适的数(必须修改)使得区间和最大的那个区间的和尽量大,问最大区间和是多大?

解题思路:

  数据范围比较小,水题,可以暴力,枚举修改的数字,然后求区间和最大的,最后比较得出最大。

 1 #include <cstdio>
 2 #include <cstring>
 3 #include <iostream>
 4 #include <algorithm>
 5 using namespace std;
 6 const int maxn = 1010;
 7 const int INF = 0x3f3f3f3f;
 8 typedef __int64 LL;
 9 int main ()
10 {
11     LL t, a[maxn];
12     scanf ("%I64d", &t);
13     while (t --)
14     {
15         LL n, m;
16         scanf ("%I64d %I64d", &n, &m);
17         for (int i=0; i<n; i++)
18             scanf ("%I64d", &a[i]);
19         LL Max = -INF;
20         for (int i=0; i<n; i++)
21         {
22             swap (m, a[i]);
23             LL sum, num;
24             sum = num = -INF;
25             for (int j=0; j<n; j++)
26                 {
27                     if (num < 0)
28                         num = a[j];
29                     else
30                         num += a[j];
31                     if (num > sum)
32                         sum = num;
33                 }
34                 if (sum > Max)
35                     Max = sum;
36                 swap (m, a[i]);
37         }
38         printf ("%I64d\n", Max);
39     }
40     return 0;
41 }

1002:Senior‘s Gun

题目大意:

  有n个技能,m个怪兽,当技能的伤害力x大于怪兽的防卫能力y,这个技能就可以消灭这个怪兽,并且得到x-y的分数,怪兽可以不被消灭完,问最大得分是多少?

解题思路:

  简单贪心,把技能值和怪兽能力值排序,用最大的技能值减去最小的怪兽防御能力,直到最后没有技能可以消灭怪兽。

 1 #include <cstdio>
 2 #include <cstring>
 3 #include <iostream>
 4 #include <algorithm>
 5 using namespace std;
 6 const int maxn = 100010;
 7 const int INF = 0x3f3f3f3f;
 8 typedef __int64 LL;
 9 LL a[maxn], b[maxn];
10 int main ()
11 {
12     int t;
13     scanf ("%d", &t);
14     while (t --)
15     {
16         int n, m;
17         scanf ("%d %d", &n, &m);
18         for (int i=0; i<n; i++)
19             scanf ("%I64d", &a[i]);
20         for (int i=0; i<m; i++)
21             scanf ("%I64d", &b[i]);
22         sort (a, a+n);
23         sort (b, b+m);
24         LL sum = 0;
25         for (int i=n-1,j=0;i>=0&&j<m; i--,j++)
26             {
27                 if (a[i] < b[j])
28                     break;
29                 sum += a[i] - b[j];;
30             }
31         printf ("%I64d\n", sum);
32     }
33     return 0;
34 }
时间: 2024-12-25 04:56:36

BestCoder Round #47 ($)的相关文章

BestCoder Round #91

传送门:http://acm.hdu.edu.cn/search.php?field=problem&key=BestCoder+Round+%2391&source=1&searchmode=source A题:给你n种字母,每种字母有个权值vali,共cnti个,现在让你在里面挑出任意数量的字符,组合成一个字符串,该字符串的权值的计算方式为val1*1+val2*2+--+valn*n,让你输出字符串最大的权值是多少.这题很容易会有一个错误的贪心,就是把val为负的舍去,然后v

BestCoder Round #65 (ZYB&#39;s Game)

ZYB's Game Accepts: 672 Submissions: 1207 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Problem Description ZYBZYBZYB played a game named NumberBombNumber BombNumberBomb with his classmates in hiking:a host keeps a

hdu5418 BestCoder Round #52 (div.2) Victor and World ( floyd+状压dp)

Problem Description After trying hard for many years, Victor has finally received a pilot license. To have a celebration, he intends to buy himself an airplane and fly around the world. There are n countries on the earth, which are numbered from 1 to

hdu 5163 Taking Bus (BestCoder Round #27)

Taking Bus                                                               Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 501    Accepted Submission(s): 203 Problem Description Bestland has a v

BestCoder Round #11 (Div. 2) 前三题题解

题目链接: huangjing hdu5054 Alice and Bob 思路: 就是(x,y)在两个參考系中的表示演全然一样.那么仅仅可能在这个矩形的中点.. 题目: Alice and Bob Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 216    Accepted Submission(s): 166 Problem De

BestCoder Round #16

BestCoder Round #16 题目链接 这场挫掉了,3挂2,都是很sb的错误 23333 QAQ A:每个数字,左边个数乘上右边个数,就是可以组成的区间个数,然后乘的过程注意取模不然会爆掉 B:dp,dp[i][2]记录下第一长的LIS,和第二长的LIS,哎,转移的时候一个地方写挫掉了导致悲剧啊QAQ C:首先如果知道Nim游戏的,就很容易转化问题为,一些数字是否能选几个能否异或和为0,那么就是每个数字拆成40位,然后每一位异或和为0,这样就可以构造出40个方程,然后高斯消元求解,如果

BestCoder Round #11 (Div. 2) 题解

HDOJ5054 Alice and Bob Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 302    Accepted Submission(s): 229 Problem Description Bob and Alice got separated in the Square, they agreed that if they

BestCoder Round #9

BestCoder Round #9 题目链接 A:暴力枚举一个数字,就能求出另一个数字,for一遍即可 B:博弈,判断前n - 1个开头连续1的奇偶性即可 C:先预处理出每个点对应哪几个点,每次查询计算一次即可 代码: A: #include <cstdio> #include <cstring> #include <vector> #include <set> #include <algorithm> #include <cmath&g

hdu 4956 Poor Hanamichi BestCoder Round #5(数学题)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4956 Poor Hanamichi Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 7    Accepted Submission(s): 4 Problem Description Hanamichi is taking part in