牛客寒假训练营2-C算概率】的更多相关文章

思路 用 f(i,j) 来表示当前做了i道题,共做对了j道题 状态 f[i][j] = f[i-1][j] * (1-p[i]) + f[i-1][j-1] * p[i] 第一种:由于i-1时对了j题,所以第i题做错了: 第二种:由于i-1时对了j-1题,所以第i题对了: 时间复杂度O(n^2) CODE #include <bits/stdc++.h> #define dbg(x) cout << #x << "=" << x <…
题目链接 这个题,一眼看上去就是最短路的题,边权有负环显然不能用dij,然后出题人又卡了spfa,,那怎么办的想点办法啊,好像还有一个拓扑排序可以求最短路吧,这时候正解就已经得到了,就是拓扑排序求最短路. 在求拓扑序的时候,每次入队时,将这个入队的点所拓展出来的点都进行松弛操作,就可以啦,复杂度O(E+V),后面的判断还要注意一下.就做完啦. #include <set> #include <map> #include <queue> #include <stac…
思路 dp去维护前缀f[i-1] - ai的最小值 CODE #include <bits/stdc++.h> #define dbg(x) cout << #x << "=" << x << endl using namespace std; typedef long long LL; template<class T>inline void read(T &res) { ; ;res=c-'; +c-'…
可以把面积为1的好三角形分成两类分开统计:两条边和两个坐标轴平行:只有一条边和某个坐标轴平行. 对于第一种情况,一定是1*2或者2*1的形式,一个1*2的矩形中含有4个不同的三角形.总数是4*((n-2)*(m-1)+(m-2)*(n-1)) 对于第二种情况,可以分别统计底边为2,高为1和底边为1,高为2的情况. #include<bits/stdc++.h> using namespace std; #define ll long long ; int main() { ll n,m; ci…
2020牛客寒假算法基础集训营2 A.做游戏 这是个签到题. #include <cstdio> #include <cstdlib> #include <cstring> #include <queue> #include <vector> #include <algorithm> #include <map> #include <iostream> #define inf 0x3f3f3f3f #defin…
2020牛客寒假算法基础集训营1 这套题整体来说还是很简单的. A.honoka和格点三角形 这个题目不是很难,不过要考虑周全,面积是1,那么底边的长度可以是1也可以是2, 注意底边1和2会有重复的,所以要注意去除这个重复部分的. #include<bits/stdc++.h> using namespace std; ; typedef long long ll; ; int main(){ ll n,m,ans=; scanf("%lld%lld",&n,&am…
链接:https://ac.nowcoder.com/acm/contest/330/H来源:牛客网 Applese 和它的小伙伴参加了一个促销的抽奖活动,活动的规则如下:有一个随机数生成器,能等概率生成 0∼99 之间的整数,每个参与活动的人都要通过它获取一个随机数.最后得到数字最小的 k 个人可以获得大奖.如果有相同的数,那么后选随机数的人中奖.   Applese 自然是最心急的一个,它会抢在第一个去按随机数.请你帮忙计算一下它能够中奖的概率. 仅一行三个正整数 n, k, x,分别表示参…
题目描述: 链接:https://ac.nowcoder.com/acm/contest/317/D来源:牛客网小a和小b来到了一条布满了黄金的街道上.它们想要带几块黄金回去,然而这里的城管担心他们拿走的太多,于是要求小a和小b通过做一个游戏来决定最后得到的黄金的数量. 游戏规则是这样的: 假设道路长度为nn米(左端点为00,右端点为nn),同时给出一个数kk(下面会提到kk的用法) 设小a初始时的黄金数量为AA,小b初始时的黄金数量为BB 小a从11出发走向n−1n−1,小b从n−1n−1出发…
链接:https://ac.nowcoder.com/acm/contest/330/G来源:牛客网 Applese 的毒气炸弹 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 众所周知,Applese 是个很强的选手,它的化学一定很好. 今天他又AK了一套题觉得很无聊,于是想做个毒气炸弹玩. 毒气炸弹需要 k 种不同类型元素构成,Applese一共有 n 瓶含有这些元素的试剂. 已知元…
链接:https://ac.nowcoder.com/acm/contest/329/G来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 经过了选号和漫长的等待,处女座终于拿到了给小姐姐定制的手环,小姐姐看到以后直呼666! 处女座其实也挺喜欢6这个数字的,实际上他做手环的时候选取的k=6.所以他对于包含数码6的数字极其敏感.每次看到像4567这样的数字的时候他的心就像触电了…
链接:https://ac.nowcoder.com/acm/contest/329/B 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 处女座想出去比赛,但是又不知道学校能不能给到足够的经费.然而处女座是大众粉丝,有着很好的人缘,于是他找了一个在学校管经费的地方勤工俭学偷来了一份报销标准. 由于处女座是万人迷,所以他在中间途径的每一条线路上都会发生一些故事,也许是粉丝给他…
链接:https://ac.nowcoder.com/acm/contest/330/E 来源:牛客网 题目描述 精通程序设计的 Applese 叕写了一个游戏. 在这个游戏中,有一个 n 行 m 列的方阵.现在它要为这个方阵涂上黑白两种颜色.规定左右相邻两格的颜色不能相同.请你帮它统计一下有多少种涂色的方法.由于答案很大,你需要将答案对 109+7109+7 取模. 输入描述: 仅一行两个正整数 n, m,表示方阵的大小. 输出描述: 输出一个正整数,表示方案数对 109+7109+7 取模.…
链接:https://ac.nowcoder.com/acm/contest/330/I 来源:牛客网 自从 Applese 学会了字符串之后,精通各种字符串算法,比如--判断一个字符串是不是回文串. 这样的题目未免让它觉得太无聊,于是它想到了一个新的问题. 如何判断一个字符串在任意位置(包括最前面和最后面)插入一个字符后能不能构成一个回文串? 输入描述: 仅一行,为一个由字母和数字组成的字符串 s. 输出描述: 如果在插入一个字符之后可以构成回文串,则输出"Yes", 否则输出&qu…
链接:https://ac.nowcoder.com/acm/contest/331/J来源:牛客网 小希最近想知道一个东西,就是A+B=A|B(其中|为按位或)的二元组有多少个. 当然,直接做这个式子对小希来说太难了,所以小希改变了一些条件,她仅想知道其中A,B<N的情况,其中N为2的幂次. 当然,(A=1,B=0)和(A=0,B=1)被认为是不同的二元组.   对于这种问题一点都不懂..... 法1:打表找规律  3^m 法2:二进制分析,每一位只有00, 01,10 这3种情况  举例  …
链接:https://ac.nowcoder.com/acm/contest/330/C来源:牛客网 精通程序设计的 Applese 双写了一个游戏. 在这个游戏中,它被困在了一个 n×m迷宫 在迷宫中,有一些方格是水池,只有当 Applese 处于水属性的时候才可以通过:有一些方格是岩浆,只有当 Applese 是火属性的时候可以通过:有一些方格是墙壁,无论如何都无法通过:另一些格子是空地(包括起点和终点),可以自由通过 在一些空地上有神秘道具可以让 Applese 转换自己的属性(从水属性变…
链接:https://ac.nowcoder.com/acm/contest/330/F来源:牛客网 Applese 有一个QQ群.在这个群中,大家互相请教问题.如 b 向 a 请教过问题,就把 a 叫做是 b 的"老板".这样一个群中就会有很多老板. 同时规定:如果 a 是 b 的老板,b 是 c 的老板,那么 a 也是 c 的老板. 为了不破坏群里面和谐交流的氛围,Applese 定了一个群规:不允许出现 a 既是 b 的老板, b 又是 a 的老板. 你需要帮助 Applese…
链接:https://ac.nowcoder.com/acm/contest/330/I来源:牛客网 自从 Applese 学会了字符串之后,精通各种字符串算法,比如……判断一个字符串是不是回文串. 这样的题目未免让它觉得太无聊,于是它想到了一个新的问题. 如何判断一个字符串在任意位置(包括最前面和最后面)插入一个字符后能不能构成一个回文串? 最近刷kuangbin的kmp&manacher 然后就直接上manacher了.(还是有点不熟..) 思路:先跑manacher 得到 p数组 如果原串…
链接:https://ac.nowcoder.com/acm/contest/330/G来源:牛客网 众所周知,Applese 是个很强的选手,它的化学一定很好. 今天他又AK了一套题觉得很无聊,于是想做个毒气炸弹玩. 毒气炸弹需要 k 种不同类型元素构成,Applese一共有 n 瓶含有这些元素的试剂. 已知元素混合遵循 m 条规律,每一条规律都可以用 "x y c" 描述. 表示将第 x 瓶试剂混入第 y 瓶试剂或者把第 y 瓶试剂混入第 x 瓶试剂,需要消耗 c 的脑力. 特别地…
链接:https://ac.nowcoder.com/acm/contest/327/G来源:牛客网 一天,处女座在牛客算法群里发了一句“我好强啊”,引起无数的复读,可是处女座发现复读之后变成了“处女座好强啊”.处女座经过调查发现群里的复读机都是失真的复读机,会固定的产生两个错误.一个错误可以是下面的形式之一: 1.       将任意一个小写字母替换成另外一个小写字母 2.       在任意位置添加一个小写字母 3.       删除任意一个字母 处女座现在在群里发了一句话,他收到了一个回应…
链接:https://ac.nowcoder.com/acm/problem/201986来源:牛客网 题目描述 小 Q 新学会了一种魔法,可以对一个 N行M列 的网格上的敌人造成伤害 第 i 次使用魔法可以对网格上的一个十字形区域(即第 xi 行和第 yi 列的并)中的每个格子上的敌人造成 zi 点伤害 现在小 Q 一共使用了 H 次魔法,你需要在所有的施法完成之后统计造成伤害的情况,详见输出描述 提醒:本题输入规模较大,请使用高效的输入方式 1≤H≤500,000 1≤xi,yi,zi,N,…
链接:https://ac.nowcoder.com/acm/contest/3007/I来源:牛客网 题目描述 小 Q 所在的国家有 N 个城市,城市间由 N-1 条双向道路连接,任意一对城市都是互通的. 每条道路有一个长度,自然,小 Q 的导航系统能显示每对城市间的最短距离. 但是小 Q 对这个系统并不太放心,于是他向你求助: 给定每对城市间的最短距离,你要判断距离表是否一定有误. 如果这张距离表是自洽的,那么请你按升序依次给出每条道路的长度. 对于全部的数据,1≤N≤500,输入的所有数字…
链接:https://ac.nowcoder.com/acm/contest/3007/C来源:牛客网 题目描述 现在你有 N 块矩形木板,第 i 块木板的尺寸是 Xi*Yi,你想用这些木板来玩汉诺塔的游戏. 我们知道玩汉诺塔游戏需要把若干木板按照上小下大的顺序堆叠在一起,但因为木板是矩形,所以有一个问题: 第 i 块木板能放在第 j 块木板上方当且仅当 Xi<Xj 且 Yi<Yj,于是你很可能没法把所有的木板按照一定的次序叠放起来. 你想把这些木板分为尽可能少的组,使得每组内的木板都能按照一…
链接:https://ac.nowcoder.com/acm/contest/3005/F来源:牛客网 题目描述 现有一个 n 个点,n-1条边组成的树,其中 1 号点为根节点. 牛牛和牛妹在树上玩游戏,他们在游戏开始时分别在树上两个不同的节点上. 在游戏的每一轮,牛牛先走一步,而后牛妹走一步.他们只能走到没有人的空节点上.如果谁移动不了,就输掉了游戏.现在牛牛和牛妹决定随机选择他们分别的起点,于是他们想知道,有多少种游戏开始的方式,使得牛牛存在一种一定获胜的最优策略. 两种开始方式相同,当且仅…
链接:https://ac.nowcoder.com/acm/contest/3005/I来源:牛客网 示例1 输入 复制 2 1 1 0 2 2 1 2 1 1 0 2 2 1 输出 复制 1 1 示例2 输入 复制 2 1 1 1 2 2 1 2 1 1 1 2 2 1 输出 复制 0 0 备注: 思路: #include <bits/stdc++.h> #define dbg(x) cout << #x << "=" << x &l…
链接:https://ac.nowcoder.com/acm/contest/3002/F来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 有一天,maki拿到了一颗树.所谓树,即没有自环.重边和回路的无向连通图. 这个树有 个顶点, 条边.每个顶点被染成了白色或者黑色. maki想知道,取两个不同的点,它们的简单路径上有且仅有一个黑色点的取法有多少? 注: ①树上两点简单路…
链接:https://ac.nowcoder.com/acm/contest/317/B 来源:牛客网 题目描述 小a非常喜欢204204这个数字,因为′a′+′k′=204′a′+′k′=204. 现在他有一个长度为nn的序列,其中只含有2,0,42,0,4这三种数字 设aiai为序列中第ii个数,你需要重新排列这个数列,使得∑ni=1(ai−ai−1)2∑i=1n(ai−ai−1)2最大(公式的含义是:每个数与前一个数差的平方的和) 注意:我们默认a0=0a0=0 输入描述: 第一行一个整数…
D : 子段异或 考察点 : 位运算,前缀和,异或的性质和应用 坑点 : 0 - L 的异或值是 0 的话也是一个区间 相同的值可能有多个,那么这时候区间就会有多个(x * (x + 1) / 2) 关于异或的性质和应用:https://www.cnblogs.com/prjruckyone/p/12302732.html 侃侃 : 怎么求区间异或值为 0 的区间呢 ? 在求这个之前,可以想一下怎么求区间 和 为 0 的区间呢? 我们知道一个区间和或者区间异或 [L,R] 都可以表示为 sum[…
链接:https://ac.nowcoder.com/acm/contest/331/A 题意: 小希现在手里有一个连着的两块木条,长度分别为l1l1,l2l2,木条之间有一个无摩擦的连接点,木条之间可以相互转动,小希将其称之为双截棍. 现在小希把长为l1l1的木条的一端放在原点(0,0),任意转动这两根木条,小希想知道,是否有可能通过一种转动方式使得双截棍的另一端到达指定点呢? 如果不能,请输出所有能到达的点中离目标点最近的距离 思路: 到达的距离就是l1 - l2    ---    l1…
链接:https://ac.nowcoder.com/acm/contest/332/J 题意: 你在一个 n 行 m 列的网格迷宫中,迷宫的每一格要么为空,要么有一个障碍. 你当前在第 r 行第 c 列(保证该格子为空).每次移动你可以向上下左右任意一个方向移动一格,前提是不能走到障碍上,也不能超出迷宫的边界. 你向左移动的次数不能超过 x 次,向右不能超过 y 次. 问在这种情况下,对于每个格子,是否存在一种移动方案让你走到它. 输出有多少个格子存在移动方案让你走到它. 思路: BFS 题目…
题目传送门 烟花 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K Special Judge, 64bit IO Format: %lld 题目描述 小a有个烟花,每个烟花代表着互不相同的颜色,对于第个烟花,它有的概率点燃,现在小a要去点燃它们,他想知道产生颜色的期望个数 及 产生恰好产生种颜色的概率 输入描述: 第一行两个整数 接下来一行 个数,第 个数 表示第 个烟花被点燃的概率 输出描述: 输出有两行第一行表示产生不同颜色的期望个数…