2017南宁网络赛L.The Heaviest Non-decreasing Subsequence Problem (最长非递减子序列)
来源:互联网 发布:e订通软件 编辑:程序博客网 时间:2024/05/19 01:29
题意:
给你一个序列。对于每个元素,如果他的值小于0,那么他的权重为0;如果他的值大于等于10000,那么他的真实值减去10000,且他的权重为5;否则他的权重为1。
求一个元素值非递减的序列,使得权重值最大。
思路:
根据要求重新构建一个序列,小于0则不加入,大于等于0且小于10000加入1次,大于10000加入5次。然后用nlogn的方法求最长上升子序列即可。
代码:
#include <bits/stdc++.h>using namespace std;const int maxn = 1e6+7;int arr[maxn];int dp[maxn];int main(){ int num,l = 0; while(~scanf("%d",&num)) { if(num>=10000) { num-=10000; for(int i = 0;i<5;i++) { arr[l++] = num; } } else if(num>=0) { arr[l++] = num; } } int len = 0; dp[len] = 0; dp[++len] = arr[0]; for(int i = 1;i<l;i++) { if(arr[i]>=dp[len]) dp[++len] = arr[i]; else { int pos = upper_bound(dp,dp+len+1,arr[i])-dp; dp[pos] = arr[i]; } } printf("%d",len); return 0;}
阅读全文
0 0
- 2017南宁网络赛L.The Heaviest Non-decreasing Subsequence Problem (最长非递减子序列)
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L.The Heaviest Non-decreasing Subsequence Problem 权值最大的最长带权非递减子序列
- The Heaviest Non-decreasing Subsequence Problem 最长非递减子序列 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛
- 计蒜客 2017icpc南宁赛区 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 亚洲区(南宁赛区)网络赛
- 最长不减子序列变形 The Heaviest Non-decreasing Subsequence Problem 南宁网络赛
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 L. The Heaviest Non-decreasing Subsequence Problem(最长非减子序列+思路)
- 计蒜客 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 最长不下降序列
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 The Heaviest Non-decreasing Subsequence Problem
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 The Heaviest Non-decreasing Subsequence Problem
- 绘制各种图形
- 理解Tomcat
- 最新面试题
- JavaWeb
- 常用加解密算法总结1-DES、TDES、3DES
- 2017南宁网络赛L.The Heaviest Non-decreasing Subsequence Problem (最长非递减子序列)
- MySQL模糊查询使用INSTR替代LIKE
- 太上感应篇0020
- 结合《docker进阶与实战中》中的例子理解overlayFS
- opencv 数据结构
- ubuntu vscode latex 中外语言支持
- 求出小于或等于lim的所有素数并放在aa数组中, 函数返回所求出的素数的个数。C语言编写【20题】
- QT的学习(4)QT中构造函数
- codeforce 862C Mahmoud and Ehab and the xor(构造)