首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
royzhu
获赞
19
粉丝
6
关注
5
看过 TA
4
重庆邮电大学
2022
C++
IP属地:广东
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑royzhu吗?
发布(15)
刷题
royzhu
2020-12-04 09:40
C++
除2!
读完题,我先想到贪心。仔细一想我觉得不对,k竟然有1e9.用优先队列做岂不是要T飞了。然后想到用,先排序再用两个队列维护。仔细一想,时间复杂度还不是跟k有关。回想:每个数最多被除31次(ai<=1e9)总共被除nlog(1e9)(底数为2)每次插入or删除要o(logn)总时间复杂度有点慢,但能过 #include<queue> #include<cstdio> using namespace std; #define ll long long priority_queue<int>q; int main() { int n,k;scanf("...
0
点赞
评论
收藏
转发
royzhu
2020-12-03 17:02
已编辑
C++
背包
此题用生成函数解决。思路考虑每一个要求的生成函数。(只选条件中的物品) x的第i次项的系数表示选i个有多少种可能(1看作x^0)("^"看作次方)(0<x<1) ;c(m,n)=n!/(m!*(n-m)!)条件一:(肥宅快乐水)1+x条件二:(大盘鸡)1+x+x^2条件三:(啤酒鸡)1+x+x^2+x^3条件四:(鸡翅)1+x^2+x^4+......条件五:(鸡汤)x+x^3+x^5+......条件六:(鸡块)1+x^4+x^8+......条件七:(鸡腿)1+x条件八:(鸡蛋)1+x^3+x^6+......化简1+x+x^2+......+x^n=( 1-x^(n+1) ...
0
点赞
评论
收藏
转发
royzhu
2020-11-25 13:24
C++
Network
Network题解 题意: 给一张n个点m条边的无向连通图,然后是q次连边操作(n<=1e5,m<=2e5,q<=1e3) 边双连通图:一张无向连通图不存在桥。边双连通分量:无向连通图的极大边双连通子图。 思路 首先是把桥都给找出来。然后思考怎样连两点会对答案有影响。如果两点都在边双连通分量内,对答案无影响。否则两点路径上不再有桥,即把路径上的桥的标记取消,答案减少。 做法: 对每个边双连通分量缩点,最后缩成一棵树, 找lca从下到上取消桥标记,统计答案。(q小可以暴力修改) #include<cstdio> #include<cstring>...
0
点赞
评论
收藏
转发
royzhu
2020-10-05 16:54
C++
2020-10-05
在牛客打卡10天,今天学习:刷题 10 道
0
点赞
评论
收藏
转发
royzhu
2020-09-28 13:07
C++
2020-09-28
在牛客打卡9天,今天学习:刷题 10 道
0
点赞
评论
收藏
转发
royzhu
2020-09-26 12:03
已编辑
C++
[SCOI2009]游戏
读完题我们可以分成两部分。第一部分是把n拆成由数字1~n组成的不同排列。如3=1+1+13=2+13=3第二部分是:排列中每个数的最小公倍数。每个排列的最小公倍数去重后的个数是答案。对于第二部分,我们想一想,可以发现,最小公倍数可以分为多个质因数。所以对于第一部分,我们要用n以下的质数组成n的排列。将两部分结合起来就是用n以下的素数的无限背包。 #include<cstdio> #include<cstring> #define ll long long const int M=1010; ll f[M];//f[j]为和为j的不同排数 int n,len=0; ...
0
点赞
评论
收藏
转发
royzhu
2020-09-25 13:24
C++
2020-09-25
在牛客打卡8天,今天学习:刷题 10 道
0
点赞
评论
收藏
转发
royzhu
2020-09-22 13:05
C++
2020-09-22
在牛客打卡7天,今天学习:刷题 10 道
0
点赞
评论
收藏
转发
royzhu
2020-09-19 17:21
C++
2020-09-19
在牛客打卡6天,今天学习:刷题 10 道
0
点赞
评论
收藏
转发
royzhu
2020-09-19 13:34
C++
联合权值
读完题我们会发现此题有树结构。我们以1为根结点。假设我们已经做完了x号节点(x可以是叶子节点)的儿子们(y号节点),我们就在x号节点的tot加上y的tot。设maxx为与x连边的节点中点权最大值,每次maxx与y的点权的乘积就可能是最大值。设sum为与x连边的节点中点权之和,x的tot加上sum与y的点权的乘积,这样就能不重复的统计所有序点对的联合权值。自己模拟一下就可以知道。返回最大值(maxx)和tot #include<cstdio> #include<algorithm> using namespace std; const int p=10007,M=200...
0
点赞
评论
收藏
转发
royzhu
2020-07-27 13:39
C++
2020-07-27
在牛客打卡5天,今天学习:刷题 2 道/代码提交 4 次
0
点赞
评论
收藏
转发
royzhu
2020-07-25 08:20
C++
数论
2020-07-25
在牛客打卡4天,今天也很努力鸭!
0
点赞
评论
收藏
转发
royzhu
2020-07-24 09:46
C++
数论
2020-07-24
在牛客打卡3天,今天也很努力鸭!
0
点赞
评论
收藏
转发
royzhu
2020-07-23 10:58
C++
1
2020-07-23
在牛客打卡2天,今天也很努力鸭!
0
点赞
评论
收藏
转发
royzhu
2019-10-31 14:49
C++
2019-10-31
在牛客打卡1天,今天也很努力鸭!
0
点赞
评论
收藏
转发
1
工具箱
TA的圈子
暂未加入圈子
TA的圈子
TA的笔记
暂无笔记
TA的笔记
登录
0
天
已登录
0
天
连续登录
0
人
今日访客
牛客网
牛客企业服务