2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L.The Heaviest Non-decreasing Subsequence Problem
来源:互联网 发布:网络最火说唱歌手排名 编辑:程序博客网 时间:2024/05/26 02:18
题目链接:https://nanti.jisuanke.com/t/17319
题目大意:求构成的非递减序列的最大权值
解题思路:trick就是把价值为5的数分成5个价值为1的数,这并不会影响决策,对于负数,直接忽略,因为对结果不产生任何影响,所以直接用LIS
AC代码:
#include<cstdio>using namespace std;const int MAXN = 2 * 1000000 + 5;int gt[MAXN], dp[MAXN];int binarySearch(int l, int r, int val){ int mid; while (l <= r) { mid = (l + r) >> 1; if (dp[mid] <= val) l = mid + 1; else r = mid - 1; } return l;}int toLis(int n){ int tot = 0; dp[tot++] = gt[0]; for (int i = 1;i < n;i++) { if (gt[i] >= dp[tot - 1]) dp[tot++] = gt[i]; else { int pos = binarySearch(0, tot - 1, gt[i]); dp[pos] = gt[i]; } } return tot;}int main(){ int pos = 0; for (int tmp;scanf("%d", &tmp) == 1;) { if (tmp >= 10000) for (int i = 1;i <= 5;i++) gt[pos++] = tmp - 10000; else if (tmp < 0) continue; else gt[pos++] = tmp; } printf("%d\n", toLis(pos)); return 0;}
阅读全文
0 0
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛:The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L. The Heaviest Non-decreasing Subsequence Problem (LIS)
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛-L. The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L. The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛:L. The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L. The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L.The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 The Heaviest Non-decreasing Subsequence Problem 最长不下降序列
- The Heaviest Non-decreasing Subsequence Problem 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 常见问题
- 计蒜客 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L. The Heaviest Non-decreasing Subsequence Problem(最长不下降子序列变形)
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L. The Heaviest Non-decreasing Subsequence Problem(最长非减子序列+思路)
- L. The Heaviest Non-decreasing Subsequence Problem -最长不降子序列变形nlogn-2017 ACM-ICPC 亚洲区(南宁赛区)网络赛
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L.The Heaviest Non-decreasing Subsequence Problem 权值最大的最长带权非递减子序列
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛The Heaviest Non-decreasing Subsequence Problem(线段树优化DP)
- nodejs代码段(六)
- 【深入PHP 面向对象】读书笔记(十三)
- easyui手风琴菜单
- Java 语言概述与开发环境(一)
- webpack简单代码分割
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L.The Heaviest Non-decreasing Subsequence Problem
- mongodb使用指南
- 外汇管制的通俗理解
- 2.存储过程的变量
- DatePicker and TimePicker
- 常见C/C++ XML解析器比较
- 变频器
- 13. 状态模式
- JDK8新特性:接口的静态方法和默认方法