首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
リムル=テンペスト
获赞
19
粉丝
12
关注
71
看过 TA
6
华南农业大学
2020
C++
IP属地:未知
リムル=テンペスト
私信
关注
拉黑
举报
举报
确定要拉黑リムル=テンペスト吗?
发布(2)
刷题
リムル=テンペスト
2018-07-28 00:45
已编辑
C++
牛客练习赛23 B题题解
题意为给一个n,每次n拆成u+v,价值为u*v,然后继续对u,v进行相同操作,直到所以数字都拆分成为1 对于一个数n,显然每次将起拆分成两个最相近的数贡献最大,但是直接递归求解会TLE,此时需要稍微进行优化 可以先通过线性递推预处理前1e6个: dp[1] = 0; for(int i = 2; i <= 1e6; ++i){ dp[i] = dp[i>>1] + dp[i+1>>1] + 1ll * (i>>1) * (i+1>>1); } 然后再进行dfs求解即可: ll dfs(...
投递牛客等公司 >
0
点赞
评论
收藏
转发
リムル=テンペスト
2018-07-20 20:51
已编辑
C++
牛客网暑期ACM多校训练营(第一场)J 题解
这题是这场的签到题,每次查询求a[1...l]和a[r...n]有多少种不同的数字 这题做法很多,有***树、莫队、离线树状数组。 ***树和莫队都是很多人T了的,包括我们队在内,这里我就讲一下离线树状数组的做法。 首先将原数组扩展为2倍长的,即 a[i+n] = a[i] 对于查询a[1...l]和a[r..n]有多少种不同的数字可以转换为查询 a[r...l+n]有多少种不同的数字 首先考虑维护一个前缀和,pre[i]表示a[1...i]有多少种不同的数字,那么对于a[l...r]的答案就为pre[r] - pre[l-1] + 在a[l...r]和a[1....
投递牛客等公司 >
0
点赞
评论
收藏
转发
1
工具箱
TA的圈子
暂未加入圈子
TA的圈子
TA的笔记
暂无笔记
TA的笔记
登录
0
天
已登录
0
天
连续登录
0
人
今日访客
牛客网
牛客企业服务