摘要: 题意略。 本题考查动态规划,顺便考查一下优化。 这个题目可以归约到最长递增子序列那一类,定义状态:dp[i][j] 当前以第i个数结尾,前一个数是第j个数的最长序列。 if(a[i] == a[k]) dp[i][j] = dp[j][k] + 1; 这里不用再去枚举k了,因为从小到大枚举j时可以顺 阅读全文
posted @ 2018-03-01 16:22 温和的提比略 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 题意略。 做这个题有2个收获: 1.认识了atan2(y,x)这个函数,该函数可以求出原点到点(x,y)组成的向量,与x轴正方向形成的夹角。 2.这个题目的思路是极角排序后,取360 - 后一个点的角度与前一个点的角度的差值中最小值为答案,但是当这些点没有布满360度的方向怎么办呢? 这里我们新添一 阅读全文
posted @ 2018-03-01 15:14 温和的提比略 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 题意略。 这个题目最关键的是在于计算球冠的体积。令球冠体积为V。 我们可以用祖暅原理来计算V, 这里,可以看出,球冠的体积等于左图的上半个圆柱减去那个倒扣的圆台。 祖暅原理:界于两个平行平面之间的两个立体,被任一平行于这两个平面的平面所截,如果两个截面的面积相等,则这两个立体的体积相等。 V = P 阅读全文
posted @ 2018-03-01 14:45 温和的提比略 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 题意略。 开始想开一个三维的树状数组,但是一算空间不够,正解是离线操作,按位来计算,一共是10位,所以总共是扫10遍,第i遍只处理第i位的询问, 注意在修改后,要把当前这个位的值存下来(这就是cur数组的作用)! 阅读全文
posted @ 2018-03-01 10:08 温和的提比略 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 题意略。 巧妙的尺取法。我们来枚举每个字符str[i],计算以str[i]为结尾的符合题意的串有多少个。那么我们需要处理出str[i]的左边界j,在[j,i]之间的串均为符合题意的 串,那么str[i + 1]能否利用str[i]的处理结果呢?是可以的。str[i + 1]的左边界 >= str[i 阅读全文
posted @ 2018-03-01 08:44 温和的提比略 阅读(95) 评论(0) 推荐(0) 编辑