下笔春蚕食叶声。
摘要: 题目大意:a和b坐了两列不同的火车,且打算再车站会面。a车在$[t1,t2]\(时间段等概率到达,b在\)[s1,s2]$时间段等概率到达。火车停$w$分钟后出发。求碰面的概率。 解法简述: 设a在x时间到达,b在y时间到达,即$|y-x|<=w$时可以碰面。即$x-w<=y<=x+w$ (白书配图 阅读全文
posted @ 2020-06-11 18:30 ACwisher 阅读(190) 评论(0) 推荐(0)
摘要: 这道题明显的树形DP,但是我有一个邪恶的想法,让他变成多叉树,而且不用返回可以幻影移形,但是得走回来才能去另一条走廊。这看起来很恶毒,我也不知道怎么做。 做法大家都解释的差不多了,这里我主要说一下毒瘤的读入 这道题的读入与这篇博客所讲的题目的输入非常相似 void init(int &x){ x=+ 阅读全文
posted @ 2020-06-11 18:29 ACwisher 阅读(135) 评论(0) 推荐(0)
摘要: dfs实现数位DP int dfs(int d,int m1,int m2,bool fl) d:正在填从右往左第d位 m1表示数字和%k余数,m2表示该数%k余数 fl=1表示达到当前上限,0表示没限制(数位DP常规操作)…… 我一开始是从最高位开始枚举的,但是出了些问题,现在这个写法是从最低位枚 阅读全文
posted @ 2020-06-11 18:28 ACwisher 阅读(150) 评论(0) 推荐(0)
摘要: 看看大家都是$O(n)$的,小蒟蒻已经方得不行…… 那我来一篇$O(nk+nlogn)$的好了,还是可以AC哒 用$cnt_i$表示前i家中最低消费不超过$p$元的咖啡馆的数量 用$sum_{i,k}$表示前i家中k色调的客栈总数 我们枚举第一家客栈 并计算此时选择第二家客栈的方法总数 (就是有多少 阅读全文
posted @ 2020-06-11 18:27 ACwisher 阅读(149) 评论(0) 推荐(0)
摘要: 首先,我们发现n的范围非常大,m在1000以内。 我们知道,n>=m时,一定有一段数字和能被m整除。 所以,讨论n<m的情况。n在1000以内。 背包。dp[i][j]表示前i个数中取,和除以m余数为j的。 for(int i=1;i<=n;i++){ dp[i][a[i]]=1; for(int 阅读全文
posted @ 2020-06-11 18:26 ACwisher 阅读(474) 评论(0) 推荐(0)