题目链接: http://acm.hust.edu.cn/vjudge/problem/356795 Racing Gems Time Limit: 3000MS 问题描述 You are playing a racing game. Your character starts at the x axis (y = 0) and proceeds up the race track, which has a boundary at the line x = 0 and another at x…
题意:以辆赛车可以从x轴上任意点出发,他的水平速度允许他向每向上移动v个单位,就能向左或向右移动v/r个单位(也就是它的辐射范围是个等腰三角形) 现在赛车从x轴出发,问它在到达终点前能吃到的最多钻石. 析:那个v是怎么变那个是不变的.比例考虑每个钻石的向下辐射范围,并且将其投影到x轴上的两个点,(辐射范围与x轴的两个焦点),然后我们就把题目转化成了一个区间覆盖问题, 我们可以在每一个钻石求出一个覆盖范围,什么意思呢,既然水平速度   向左的最大值等于向右的最大值,那么肯定是一个等腰三角形了,只需…
题目链接 Problem Description We are all familiar with sorting algorithms: quick sort, merge sort, heap sort, insertion sort, selection sort, bubble sort, etc. But sometimes it is an overkill to use these algorithms for an almost sorted array. We say an a…
6357. Hills And Valleys 自己感觉这是个好题,应该是经典题目,所以半路选手补了这道字符串的动态规划题目. 题意就是给你一个串,翻转任意区间一次,求最长的非下降子序列. 一看题面写的0≤Ai≤9 (i=1,2,⋯,n).就知道肯定有点东西,只要这么写,肯定就是有某个神奇的操作可以解决这道题目. 比赛的时候脑壳都要炸了也没想出来,补题的时候懂了,我可以定义一个b串为0123456789,这肯定是递增的,所以我翻转b的某个区间,然后去和a匹配,因为我把b再翻转回来,还是递增的.…
                                                                              D. Once Again... You are given an array of positive integers a1, a2, ..., an × T of length n × T. We know that for any i > n it is true that ai = ai - n. Find the length of…
题意(中文直接粘吧)序列变换 Problem Description     我们有一个数列A1,A2...An,你现在要求修改数量最少的元素,使得这个数列严格递增.其中无论是修改前还是修改后,每个元素都必须是整数. 请输出最少需要修改多少个元素.   Input 第一行输入一个T(1≤T≤10),表示有多少组数据 每一组数据: 第一行输入一个N(1≤N≤105),表示数列的长度 第二行输入N个数A1,A2,...,An. 每一个数列中的元素都是正整数而且不超过106. Output 对于每组数…
双倍快乐 题目描述 Illyasviel:"你想要最长不下降子序列吗?" star-dust:"好啊!" Illyasviel:"老板,给我整两个最长不下降子序列,要最大的." 求序列 a 中的两个不相交的不下降子序列使得他们的元素和的和最大,子序列可以为空. 注 1:序列 a 不下降的定义是不存在 l<r 且 al​>ar​ 注 2:两个子序列不相交的定义是:不存在 ai​ 即在第一个子序列中也在第二个子序列中. 输入描述 第一行一…
题意:给一串由n个数字组成的字符串,选择其中一个区间进行翻转,要求翻转后该字符串的最长非降子序列长度最长,输出这个最长非降子序列的长度以及翻转的区间的左右端点 #include<bits/stdc++.h> using namespace std; typedef long long ll; ; ; int n, a[maxn], dp[maxn][maxm], b[maxm]; int ans, ansl, ansr, l, r, cnt; int al[maxn][maxm], ar[ma…
Constructing Roads In JGShining's Kingdom Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 27358    Accepted Submission(s): 7782 Problem Description JGShining's kingdom consists of 2n(n is no mor…
题意:第一象限有n个点,你从x正半轴任选一个位置出发,vy恒定,vx可以任意变化,不过只能在-vy/r到vy/r之间变化,问你最多能经过多少个点. 暴力dp是n^2,不可取. 注意到,一个点,所能到达它的点,是它后面一个张角内的所有点.这个张角很容易算出. 于是可以将这些点全部映射到一个新的坐标系内,使得这个坐标系内每个点左下方的点都是能到达它的点.(没必要真的算出那些真的变换后的坐标,可以以到那个虚拟张角的两条边的距离作为坐标,这样虽然扭曲了一点,但不影响答案.) 于是转化成了二维偏序问题,可…