BZOJ2697: 特技飞行

2697: 特技飞行

Time Limit: 10 Sec  Memory Limit: 256 MB
Submit: 607  Solved: 363
[Submit][Status]

Description


犇航空开展了一项载客特技飞行业务。每次飞行长N个单位时间,每个单位时间可以进行一项特技动作,可选的动作有K种,每种动作有一个刺激程度Ci。如果连
续进行相同的动作,乘客会感到厌倦,所以定义某次动作的价值为(距上次该动作的时间)*Ci,若为第一次进行该动作,价值为0。安排一种方案,使得总价值
最大。

Input

  第一行,两个数,N和K,如上所述;
  第二行,K个正整数,表示K种动作的Ci值。

Output

  仅一行,一个整数,表示最大总价值。

Sample Input

5 2
2 2

Sample Output

12

HINT

数据规模及约定

  对于10%的测试数据,N<=20,K<=3

  对于全部的测试数据,1<=N<=1000,1<=K<=300,0<=Ci<=1000。

Source

题解:

刚开始以为是网络流?后来想了想放弃了。。。

想了想贪心,把大的放到两端?貌似正确,好像又不严密,不敢写,看看题解吧。。。

。。。。。。

感觉不会再爱了

代码:

 1 #include<cstdio>
 2
 3 #include<cstdlib>
 4
 5 #include<cmath>
 6
 7 #include<cstring>
 8
 9 #include<algorithm>
10
11 #include<iostream>
12
13 #include<vector>
14
15 #include<map>
16
17 #include<set>
18
19 #include<queue>
20
21 #include<string>
22
23 #define inf 1000000000
24
25 #define maxn 5000
26
27 #define maxm 500+100
28
29 #define eps 1e-10
30
31 #define ll long long
32
33 #define pa pair<int,int>
34
35 #define for0(i,n) for(int i=0;i<=(n);i++)
36
37 #define for1(i,n) for(int i=1;i<=(n);i++)
38
39 #define for2(i,x,y) for(int i=(x);i<=(y);i++)
40
41 #define for3(i,x,y) for(int i=(x);i>=(y);i--)
42
43 #define mod 1000000007
44
45 using namespace std;
46
47 inline int read()
48
49 {
50
51     int x=0,f=1;char ch=getchar();
52
53     while(ch<‘0‘||ch>‘9‘){if(ch==‘-‘)f=-1;ch=getchar();}
54
55     while(ch>=‘0‘&&ch<=‘9‘){x=10*x+ch-‘0‘;ch=getchar();}
56
57     return x*f;
58
59 }
60 int n,m,k,a[maxn];
61 inline bool cmp(int x,int y)
62 {
63     return x>y;
64 }
65
66 int main()
67
68 {
69
70     freopen("input.txt","r",stdin);
71
72     freopen("output.txt","w",stdout);
73
74     n=read();k=read();
75     for1(i,k)a[i]=read();
76     sort(a+1,a+k+1,cmp);
77     int ans=0;
78     for1(i,min(k,n/2))ans+=(n-2*i+1)*a[i];
79     cout<<ans<<endl;
80
81     return 0;
82
83 }

时间: 2024-10-13 06:48:23

BZOJ2697: 特技飞行的相关文章

bzoj2697特技飞行*

bzoj2697特技飞行 题意: N个单位时间,每个单位时间可以进行一项特技动作,可选的动作有K种,每种动作有一个刺激程度Ci.每次动作的价值为(距上次该动作的时间)*Ci,若为第一次进行该动作,价值为0.求最大总价值.N≤1000,K≤300. 题解: 因为如果同个动作做3次,不如只做头尾两次更好.所以把动作按Ci降序排序,把Ci大的尽量放在两端. 代码: 1 #include <cstdio> 2 #include <cstring> 3 #include <algori

2697: 特技飞行

2697: 特技飞行 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 646  Solved: 393[Submit][Status] Description 神犇航空开展了一项载客特技飞行业务.每次飞行长N个单位时间,每个单位时间可以进行一项特技动作,可选的动作有K种,每种动作有一个刺激程度Ci.如果连续进行相同的动作,乘客会感到厌倦,所以定义某次动作的价值为(距上次该动作的时间)*Ci,若为第一次进行该动作,价值为0.安排一种方案,使得总价值最

BZOJ 2697 特技飞行(贪心)

[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2697 [题目大意] 神犇航空开展了一项载客特技飞行业务. 每次飞行长N个单位时间,每个单位时间可以进行一项特技动作, 可选的动作有K种,每种动作有一个刺激程度Ci. 如果连续进行相同的动作,乘客会感到厌倦, 所以定义某次动作的价值为(距上次该动作的时间)*Ci,若为第一次进行该动作,价值为0. 安排一种方案,使得总价值最大. [题解] 我们发现一个动作进行两遍收益才是最大的,进行第三

Loj #3085. 「GXOI / GZOI2019」特技飞行

Loj #3085. 「GXOI / GZOI2019」特技飞行 题目描述 公元 \(9012\) 年,Z 市的航空基地计划举行一场特技飞行表演.表演的场地可以看作一个二维平面直角坐标系,其中横坐标代表着水平位置,纵坐标代表着飞行高度. 在最初的计划中,这 \(n\) 架飞机首先会飞行到起点 \(x = x_{st}\) 处,其中第 \(i\) 架飞机在起点处的高度为 \(y_{i,0}\).它们的目标是终点 \(x = x_{ed}\) 处,其中第 \(i\) 架飞机在终点处的高度应为 \(y

题解-GXOI/GZOI2019 特技飞行

Problem loj3085 bzoj不放题面差评 题意概要:给出两条竖直直线,再给出 \(n\) 架飞机的初始航线:一条接通这两条直线的线段,保证航线交点不在两条直线上.现要求安排所有飞机在航线相交处做特技: 擦身而过:两架飞机按原方向线路继续前进,一次得分 \(b\) 对向交换:两架飞机交换线路继续前进,一次得分 \(a\) 另外,给定 \(k\) 个边界与坐标轴成 \(45°\)角 的正方形,若一次特技被至少一个正方形囊括,则总得分加 \(c\) 现要求决策每次相遇做的特技,求最大/最小

[GX/GZOI2019]特技飞行(扫描线+置换)

感觉是6题中最难的一题,其实这题是一个二合一: 第一问:给定平面上若干点和k个关键点,关键点覆盖一个45°倾斜的正方形范围r,求有多少点被至少一个关键点覆盖.这个可以曼哈顿转切比雪夫距离,然后再扫描线求解,复杂度O(nlogn) 第二问:求最少和最多有多少次擦肩而过.显然每个交点都可以做对向交换,这是最少擦肩而过的次数.最多的次数,假设全部擦肩而过得到排列p,对向交换实际上是交换两元素位置,用最小交换次数还原排列即可. #include<bits/stdc++.h> using namespa

基于unity的飞行模拟设计

使用unity开发游戏真是非常方便.研究飞行模拟也有一段时日,尝试过物理和数学模拟.从效果上来看,物理模拟较为真实一点.但是操作不好.数学模拟的话,虽然牺牲了飞行效果,操控是非常方便的. 所谓的数学模拟,就是位移模拟,通过定义起飞速度,加速度等,模拟飞机的飞行过程,包括转向,飞行坠落等. 来看一下飞机的飞行状态:在地面上,飞机达到起飞速度时,可以拉起飞机,否则,一直在地面上:在空中:当飞机低于起飞速度,下降.大于起飞速度则能保持在空中.飞机不可能倒着飞行的,所以,飞机的速度状态就有:起飞速度,正

大神刷题表

9月27日 后缀数组:[wikioi3160]最长公共子串 dp:NOIP2001统计单词个数 后缀自动机:[spoj1812]Longest Common Substring II [wikioi3160]最长公共子串 [spoj7258]Lexicographical Substring Search 扫描线+set:[poj2932]Coneology 扫描线+set+树上删边游戏:[FJOI2013]圆形游戏 结论:[bzoj3706][FJ2014集训]反色刷 最小环:[poj1734

超酷MWC四轴飞行器DIY全套教程

本帖最后由 hitor 于 2013-8-17 22:06 编辑一.自己玩四轴的经历介绍.      各位模友大家好,我是哈工大航院的一名学生.我接触四轴的时间较早,由于我室友大二做科创就是做四轴的,那时候我们俩一人负责一个项目,他做四轴我做电动独轮车,我不太喜欢我的项目,烧了好多钱,最后也只能草草了事.我对四轴倒是很感兴趣,所以他一焊电路.写程序或是调试PID参数,我都像跟班似的死死的盯着他做的东西,有不懂的就向他请教,时间长了我也掌握了四轴的一些基本知识.几个月前我突发了做四轴的想法,但我不