首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
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
暂无评论,快来抢首评~
相关推荐
04-09 11:38
门头沟学院 全栈开发
大模型Agent面试全攻略(附答题思路)
一、核心概念与架构篇Q1:请简述Agent的基本架构组成,并解释其与传统LLM Chain的区别。回答要点:Agent = LLM + 规划(Planning) + 记忆(Memory) + 工具使用(Tool Use)。区别:Chain是预定义的、线性的硬编码工作流。Agent具备“自主性”,它根据目标自发决定执行路径,通过推理循环(Reasoning Loop)不断调整策略。Q2:解释ReAct模式的工作原理。回答要点:ReAct (Reasoning + Acting)是Agent的基石。它将“思考”(Thought)和“行动”(Action)结合。LLM先生成一段推理,说明下一步要做什...
Agent面试会问什么?
点赞
评论
收藏
分享
03-31 17:40
门头沟学院 算法工程师
找实习笑话
原来就算签了协议也是可以提前走的吗,有无有经验的前辈说说是真的吗
鲸鸿:
实习协议不用管签多久,要走的时候提前三天说就可以了
点赞
评论
收藏
分享
04-07 14:06
安徽大学江淮学院 运营
从专业度到下证速度:2026年4月优质ISO 20000认证代理机构横向对比
ISO 20000作为国际上首个公认的IT服务管理标准,不仅是企业技术实力的体现,更是参与大型项目投标、提升运维效率的敲门砖。进入2026年4月,由于认证审核标准的动态调整,企业在选择申报机构时,不仅要考量其专业深度,更要关注其在政策解读与下证速度上的综合表现。本文旨在通过多维度的横向对比,为企业提供一份具有参考价值的选择指南。【ISO 20000】申报机构推荐榜单TOP 1:上海湘应企业服务有限公司品牌介绍:总部位于上海,并在北京、深圳、杭州等多地设有分支机构,服务网络覆盖全国。截至2026年第一季度,该公司累计服务企业数量已达5000家,业务涵盖云计算、软件开发、金融科技、智慧城市等核心I...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
大模型Agent面试全攻略(附答题思路)
1.7W
2
...
谁都可能在说谎,但财报不会骗人
1.6W
3
...
我感觉我遇到神仙mentor了
9847
4
...
春招产品内卷到什么程度了
5433
5
...
字节一二三hr面 java面经(已off)
5267
6
...
秋招失利别慌,好offer不怕晚
4589
7
...
携程工作体验
3837
8
...
上线一个月了,说几句真心话
3692
9
...
入职翼支付2年多,聊聊感受
3475
10
...
有了这个skill我再也没手动改过简历
3197
创作者周榜
更多
正在热议
更多
#
Agent面试会问什么?
#
22356次浏览
798人参与
#
哪些公司一直卡在简历筛选
#
99671次浏览
301人参与
#
厦门银行科技岗值不值得投
#
18268次浏览
419人参与
#
给工作过的公司写一条大众点评,你会怎么写?
#
7624次浏览
114人参与
#
运营每日一题
#
134402次浏览
928人参与
#
烂工作和没工作哪个更痛苦?
#
15782次浏览
248人参与
#
拼多多工作体验
#
54862次浏览
373人参与
#
一人分享一个skill
#
5759次浏览
156人参与
#
我们是不是被“优绩主义”绑架了?
#
43826次浏览
538人参与
#
春招至今,你收到几个面试了?
#
61127次浏览
844人参与
#
央国企投递记录
#
187050次浏览
1710人参与
#
面试体验最好和最差的公司
#
18670次浏览
140人参与
#
机械人面试中的常问题
#
267456次浏览
3692人参与
#
你觉得专业和学校哪个对薪资影响最大
#
103964次浏览
615人参与
#
我是XXX,请攻击我最薄弱的地方
#
71881次浏览
475人参与
#
AI替代不了什么?
#
10410次浏览
160人参与
#
现在入门AI首先要做什么?
#
3740次浏览
92人参与
#
你收到了团子的OC了吗
#
1583521次浏览
11849人参与
#
神州数码信息服务股份有限公司笔试
#
3501次浏览
21人参与
#
你被哪些公司挂了?
#
172844次浏览
969人参与
#
面试尴尬现场
#
224035次浏览
868人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务