博客园 首页 私信博主 显示目录 隐藏目录 管理 动画
摘要: "题目链接" cpp include include include const int N=105; const double eps=1e 10; int n; inline bool bigger(double a,double b) {return std::fabs(a) std::fab 阅读全文
posted @ 2018-02-12 21:09 SovietPower 阅读(188) 评论(0) 推荐(0) 编辑
摘要: "https://www.zybuluo.com/SovietPower/note/1016329" "参考原文" 阅读全文
posted @ 2018-02-12 17:15 SovietPower 阅读(205) 评论(0) 推荐(0) 编辑
摘要: "题目链接" cpp / 每行每列不能超过2个棋子,求方案数 前面行对后面行的影响只有 放了0个、1个、2个 棋子的列数,与排列方式无关 所以设f[i][j][k]表示前i行,放了0个棋子的有j列,放了1个棋子的有k列,则放了2个棋子的为(m j k)列 则放棋子一共可分为6种情况 不放棋子:1.f 阅读全文
posted @ 2018-02-12 13:03 SovietPower 阅读(179) 评论(0) 推荐(0) 编辑
摘要: "题目链接" cpp / 设f[i]表示当前i往后6位没有重复ai的次数,n = ∑a[i] 则 f[i] = a1/n a2/(n 1) a3/(n 2) a4/(n 3) a5/(n 4) a6/(n 5) a7/(n 6) (= (a1 a2 a3 a4 a5 a6 a7)/(n (n 1) 阅读全文
posted @ 2018-02-12 13:01 SovietPower 阅读(172) 评论(0) 推荐(0) 编辑
摘要: "题目链接" cpp / 到达一条河时,船在河中的位置是随机的,所以船到达岸边需要的时间在 0~2l/v 均匀分布,所以船到岸的期望为 (0+2l/v)/2 过河需要 l/v 的时间,所以过一条河总的期望为 (0+2l/v)/2 + l/v = 2l/v 陆地上的速度是确定的,可以直接先计算出来 期 阅读全文
posted @ 2018-02-12 13:01 SovietPower 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 题目链接 ...我找不着了 $Description$ 岛上有t只老虎,1个人,d只鹿。每天随机有两个动物见面 1.老虎和老虎碰面,两只老虎就会同归于尽; 2.老虎和人碰面或者和鹿碰面,老虎都会吃掉对方; 3.人和鹿碰面,人可以选择吃或者不吃该鹿; 4.鹿和鹿碰面,相安无事; 求最后人活下来的最大期 阅读全文
posted @ 2018-02-12 12:59 SovietPower 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 题目链接 ...无 题目: P1864 [Poetize I]守卫者的挑战 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 打开了黑魔法师Vani的大门,队员们在迷宫般的路上漫无目的地搜寻着关押applepi的监狱的所在地。突然,眼前一道亮光闪过。 “我,N 阅读全文
posted @ 2018-02-12 12:51 SovietPower 阅读(233) 评论(0) 推荐(0) 编辑
摘要: "题目链接" cpp / 设f[i]为到i的期望得分,c[i]为到i的期望连续长度 则若s[i]=='x',f[i]=f[i 1], c[i]=0 s[i]=='0',f[i]=f[i 1]+2 c[i 1]+1, c[i]=c[i 1]+1 (因为 (l+1)^2 = l^2+2l+1 (l+1) 阅读全文
posted @ 2018-02-12 12:50 SovietPower 阅读(154) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 阅读全文
posted @ 2018-02-12 12:45 SovietPower 阅读(188) 评论(0) 推荐(0) 编辑
摘要: "题目链接" $Description$ 有n个数,将其分为k段,每段的值为这一段的总共数字种类,问最大总值是多少 $Solution$ DP,用$f[i][j]$表示当前在i 分成了j份(第j份包括i) 那枚举前边的断点k,即 $f[i][j]=max{f[k][j 1]+val(k+1,1)}$ 阅读全文
posted @ 2018-02-12 12:38 SovietPower 阅读(263) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 下落一个d s的方块,则要在这个平面区域找一个最高的h' 更新整个平面区域的值为h+h' 对于本题,维护最大高度h和all 对于平面的x轴维护一棵线段树t1,每个t1的节点维护对应y轴的两棵线段树t2(h和all) (同一维,需要维护独立的两棵线段树) t1要用标记永久化实现,t2普通 阅读全文
posted @ 2018-02-12 12:34 SovietPower 阅读(252) 评论(0) 推荐(0) 编辑
摘要: "题目链接" cpp / 13904K 532ms 最大 环状 子段和有两种情况,比如对于a1,a2,a3,a4,a5 一是两个端点都取,如a4,a5,a1,a2,那就是所有数的和减去不选的,即可以计算总和减最小连续子段和 二是两个端点不都取,如a1,a2,a3,那需要记录最大连续子段和 线段树,令 阅读全文
posted @ 2018-02-12 12:30 SovietPower 阅读(276) 评论(0) 推荐(0) 编辑
摘要: "题目链接" cpp //注意取模! include include using namespace std; const int N=1e5+5; int n,mod,Sum[N 1)) aTag[rt]%mod)%mod; Sum[rt 1) aTag[rt]%mod)%mod; aTag[rt 阅读全文
posted @ 2018-02-12 12:30 SovietPower 阅读(196) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 阅读全文
posted @ 2018-02-12 12:29 SovietPower 阅读(178) 评论(0) 推荐(0) 编辑
摘要: "题目链接" cpp //离散化后范围1~cnt不要错 include include include // define gc() getchar() define gc() (SS==TT&&(TT=(SS=IN)+fread(IN,1,MAXIN,stdin),SS==TT)?EOF: SS+ 阅读全文
posted @ 2018-02-12 08:22 SovietPower 阅读(196) 评论(0) 推荐(0) 编辑
摘要: "题目链接" cpp / 序列上的主席树 某点是利用前一个点的根建树 同理 树上的主席树 某个节点可以利用其父节点(is unique)的根建树 排名可以利用树上前缀和求得: 对于(u,v),w=LCA(u,v),u v这条链的值就是 sum "u root]+sum[v root] sum[w r 阅读全文
posted @ 2018-02-12 08:22 SovietPower 阅读(152) 评论(0) 推荐(0) 编辑