首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
KYwlzr
2017-03-07 21:13
已编辑
吉林大学 C++
关注
已关注
取消关注
20170307C++牛客笔试题
编程 40%(素数幂) 90%(序列) 100%(算法书)
求大神粘一下100%的前两题
提示
全部评论
推荐
最新
楼层
stdc++
济南幼儿师范学校 算法工程师
第一题: #include <iostream> #include <stdio.h> #include <string.h> #include <math.h> #include <algorithm> #include <string> #include <map> #include <vector> #include <set> #include <climits> #include <ctime> #include <cassert> #define IOS ios_base::sync_with_stdio(0); cin.tie(0); using namespace std; typedef long long ll; #define mp make_pair #define fi first #define se second #define pb push_back const double pi = acos(-1.0); const int inf = 0x3f3f3f3f; const ll INF = 0x3f3f3f3f3f3f3f3fll; const int MAX_N = 1001000; int prime_cnt; int vis[MAX_N], prime[MAX_N]; void Sieve() { memset(vis, 0, sizeof (vis)); prime_cnt = 0; for (int i = 2; i < MAX_N; ++i) { if (!vis[i]) prime[prime_cnt++] = i; for (int j = 0; j < prime_cnt && 1ll * i * prime[j] < MAX_N; ++j) { vis[i * prime[j]] = 1; if (i % prime[j] == 0) break; } } } ll n; bool isPrime(ll x) { for (int i = 2; 1ll * i * i <= x; ++i) { if (x % i == 0) return false; } return true; } int main() { Sieve(); while (~scanf("%lld", &n)) { if (n > 10000) { ll q = (ll)sqrt(n + 0.5); if (isPrime(q) && q * q == n) { printf("%lld %d\n", q, 2); continue; } else if (isPrime(q + 1) && (q + 1) * (q + 1) == n) { printf("%lld %d\n", q + 1, 2); continue; } else if (isPrime(q - 1) && (q - 1) * (q - 1) == n) { printf("%lld %d\n", q - 1, 2); continue; } } int exp = 0, flag = 0; ll x = n, ret = 1; for (int i = 0; i < prime_cnt; ++i) { if (x % prime[i] == 0) { int cnt = 0; while (x % prime[i] == 0) cnt++, x /= prime[i]; ret = prime[i]; if (x == 1 && cnt > 1) exp = cnt, flag = 1; break; } } if (flag) printf("%lld %d\n", ret, exp); else printf("No\n"); } return 0; } 第二题: #include <iostream> #include <stdio.h> #include <string.h> #include <math.h> #include <algorithm> #include <string> #include <map> #include <vector> #include <set> #include <climits> #include <ctime> #include <cassert> #define IOS ios_base::sync_with_stdio(0); cin.tie(0); using namespace std; typedef long long ll; #define mp make_pair #define fi first #define se second #define pb push_back const double pi = acos(-1.0); const int inf = 0x3f3f3f3f; const ll INF = 0x3f3f3f3f3f3f3f3fll; const int MAX_N = 10010; int main() { int n, L; while (~scanf("%d%d", &n, &L)) { int find = 0, st = -1, len = 0; for (int i = L - 1; i <= 100; ++i) { if (2 * n % (i + 1)) continue; int p = 2 * n / (i + 1) - i; if (p < 0 || (p % 2)) continue; st = p / 2, len = i + 1, find = 1; break; } if (find == 0) puts("No"); else { for (int i = 0; i < len; ++i) { printf("%d", i + st); if (i < len - 1) printf(" "); else printf("\n"); } } } return 0; } 第三题: #include <iostream> #include <stdio.h> #include <string.h> #include <math.h> #include <algorithm> #include <string> #include <map> #include <vector> #include <set> #include <climits> #include <ctime> #include <cassert> #define IOS ios_base::sync_with_stdio(0); cin.tie(0); using namespace std; typedef long long ll; #define mp make_pair #define fi first #define se second #define pb push_back const double pi = acos(-1.0); const int inf = 0x3f3f3f3f; const ll INF = 0x3f3f3f3f3f3f3f3fll; const int MAX_N = 10010; int n; ll num[15], pw[15]; int main() { pw[0] = 1; for (int i = 1; i < 15; ++i) pw[i] = pw[i - 1] * 10; while (~scanf("%d", &n)) { int digit[15], len = 0, x = n; while (x) { digit[len++] = x % 10; x /= 10; } memset(num, 0, sizeof (num)); for (int i = 1; i < digit[len - 1]; ++i) num[i] += pw[len - 1]; num[digit[len - 1]] += (n % pw[len - 1] + 1); for (int i = len - 2; i >= 1; --i) { int former = n % pw[i + 1], latter = n / pw[i]; for (int j = digit[i] + 1; j < 10; ++j) num[j] += 1ll * former * pw[i]; num[digit[i]] += 1ll * former * pw[i]; if (digit[i] > 0) num[digit[i]] += latter + 1; for (int j = 1; j < digit[i]; ++j) num[j] += pw[i] * (former + 1); if (digit[i] > 0) num[0] += 1ll * former * pw[i]; } if (n > 9) { ll former = n / pw[1]; int k = digit[0]; for (int i = k + 1; i < 10; ++i) num[i] += former; for (int i = 0; i <= k; ++i) num[i] += (former + 1); } num[0] -= 1; for (int i = 0; i < 10; ++i) { printf("%lld", num[i]); if (i < 9) putchar(' '); else putchar('\n'); } } return 0; }
点赞
回复
分享
发布于 2017-03-07 21:41
武汉孙一峰
华中师范大学 C++
蒟蒻第一题用欧拉质数筛选虽然o(n),然而算幂的时候超时了,尴尬。 膜拜楼上一群数位dp随便干的daliao。
点赞
回复
分享
发布于 2017-03-07 21:45
MatthewMatt
家里蹲大学 C++
我怀疑碰到了个假人 我的也是 40 90 100 好巧~
点赞
回复
分享
发布于 2017-03-07 21:42
Yellow_p
广东工业大学 C++
第一题感觉是找最小质因数;= = 感觉怎么都会TLE所以就跳了。 第二题用等差数列求和公式,你逆向使用一下,= = 90%也是很费解。
点赞
回复
分享
发布于 2017-03-07 21:24
牛客470556号
南京大学 算法工程师
第一题50%说超时了,求100%代码
点赞
回复
分享
发布于 2017-03-07 21:23
小乌
电子科技大学 Java
第一题遍历都只40%,咋回事
点赞
回复
分享
发布于 2017-03-07 21:13
向宇同桌
牛客网创始人
这成绩还不错啊
点赞
回复
分享
发布于 2017-03-07 21:12
拖仔
东北大学 C++
第一题40% 后两题。。。。不说了 哎
点赞
回复
分享
发布于 2017-03-07 21:10
小乌
电子科技大学 Java
第三题,感谢
点赞
回复
分享
发布于 2017-03-07 21:08
暂无评论,快来抢首评~
相关推荐
05-20 13:08
门头沟学院 人工智能
平安科技 科技创新事业部 AI面试 初面
这是第二次参加平安科技的AI面试,四月份参加过一次,凉了~过了一个月收到邮件,叫我参加另一个部门的同一个岗位的AI面试。这篇笔记主要是记录遇到的面试题作为备忘,顺便给有需要的朋友提供参考。上次记录过的面试题,重复出现的我就不赘述了,请看这里:https://www.nowcoder.com/feed/main/detail/87b7f255ef6e4cceb7e0193fbc6c3f59?以下是这次面试出现的新问题:1)你对我们公司有怎样的了解?你对你投递的这个职位有哪些了解?2)如何进行xxx项目的xxx优化,如何规划任务并实施的?3)在进行xxx优化的时候,你如何判断优化已经完成了,你用什...
查看6道真题和解析
点赞
评论
收藏
分享
05-19 11:41
北京邮电大学 Java
美团本地核心商业-业务研发平台
全程拷打项目,无八股。项目拷打的比较深,会代入具体场景说明解决思路,还有部分设计和bug解决思路。最后问了AI coding的交互思路以及CR做的怎么样。八成已挂,面试官人很好的,一直引导,非常有耐心。可惜lz太菜了
查看6道真题和解析
点赞
评论
收藏
分享
04-21 18:09
河南大学 Java
28届简历求指点
28届小登搓的垃圾简历,就是个点评+天机学堂请问各位大佬这能找到小厂的实习吗?
我的求职进度条
点赞
评论
收藏
分享
05-14 16:10
东南大学 前端工程师
我已疾苦,我太想实习了
27 届暑期 0offer,求内推求内推求内推!求建议准备全力梭哈日常了,成为最早备战秋招的从三月底面到现在,一边面试一边学习一边复盘,面经就不上传了,也是发现自己的一些问题,大家可以学习,不对的地方可以在评论区指出纠正一下:1.一定要至少准备个 60% 的程度再开始面试,不然会终止流程或者脏面评,我的字节和美团应该是黑了2.听好问题想清楚再回答,慢一点讲清楚3.不会可以说些相关的,相关的也不会大大方方承认,别胡乱背八股,面试官会很折磨4.leecode 坚持刷坚持刷坚持刷,不要间隔着刷5.把知识好好梳理串联起来,把项目理解清楚为止(面试时项目露馅包死的)
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
四非本的春招总结
3667
2
...
我个人的筹备面试经验 25.12-26.4
3281
3
...
无脑拥抱Agent开发
2011
4
...
从 0-1 的 Agent 八股- RAG 篇
1948
5
...
京东oc,暑期终于结束
1427
6
...
Ai Agent、ai应用开发面经面试题
1340
7
...
字节大模型VS一汽国企,选谁?
1264
8
...
快手-Java开发实习生(服务号)-【商业化】-2026.5.22
1246
9
...
实习不包装等于白实习?
1030
10
...
实习被抓了
938
创作者周榜
更多
正在热议
更多
#
实习生的蛐蛐区
#
978656次浏览
4912人参与
#
你上一次给父母打电话是什么时候
#
44825次浏览
274人参与
#
27届实习投递记录
#
151592次浏览
1579人参与
#
父母对你找工作是助力还是阻力?
#
49173次浏览
416人参与
#
多益网络工作体验
#
74004次浏览
316人参与
#
找工作时的取与舍
#
138996次浏览
925人参与
#
多益网络求职进展汇总
#
108881次浏览
409人参与
#
实习,不懂就问
#
221673次浏览
1723人参与
#
一起聊华为
#
221544次浏览
973人参与
#
薪资一样,你会选择去大厂还是小公司
#
35590次浏览
133人参与
#
实习的内耗时刻
#
242863次浏览
1670人参与
#
发工资后,你做的第一件事是什么
#
107784次浏览
348人参与
#
求职中的尴尬瞬间
#
42413次浏览
127人参与
#
新凯来求职进展汇总
#
82936次浏览
195人参与
#
牛友投递互助,不漏校招机会
#
495589次浏览
5371人参与
#
非技术2024笔面经
#
515142次浏览
5058人参与
#
社会教会你的第一课
#
134480次浏览
874人参与
#
牛友们,签完三方你在忙什么?
#
153867次浏览
1026人参与
#
你找工作的时候用AI吗?
#
215073次浏览
1032人参与
#
听劝,这个简历怎么改
#
423303次浏览
1901人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务