首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
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-13 16:11
已编辑
南京邮电大学 运维开发工程师
1、希奥端 ----- 芯片工具开发工程师 1面20分钟 无后续
自我介绍介绍项目提问问题?1、驱动开发部分,有没有自己做过,一些模块或者外设2、驱动开发流程,相关模型,什么机制。3、对arm芯片,服务器的启动流程了解吗?物理机从上电到os启动,经过了哪些固件?反问南京的岗位,做驱动开发的,说是注重云计算方面的公司,24年建立的,200~500人,看起来挺不错的但是面试不太理想找工作ing,记录一下面试多久能找到下一份工作
查看4道真题和解析
点赞
评论
收藏
分享
昨天 08:55
广西大学 算法工程师
影石 AI开发 一面(日常)
1. 自我介绍2. TCP 和 IP 的职责边界是什么,为什么说“HTTP 基于 TCP,TCP 基于 IP”这个表述只对了一半IP 负责尽力而为地把报文从源地址送到目标地址,它不保证到达、不保证顺序,也不保证不重复。TCP 建立在 IP 之上,提供有连接、可靠传输、流量控制、拥塞控制和按序交付。HTTP 是应用层协议,它依赖传输层提供的可靠字节流,但 HTTP 本身并不“知道”底下是不是 TCP,也可以跑在 QUIC 上。所以“HTTP 基于 TCP”对传统 HTTP/1.1 和 HTTP/2 是对的,但对 HTTP/3 就不成立;“TCP 基于 IP”则更准确,因为 TCP 的寻址和转发确...
AI-Agent面试实战...
点赞
评论
收藏
分享
03-28 20:13
东南大学 Java
Agent项目简历优化
想问下agent项目和简历应该怎么优化
2的三次幂:
第一个项目写的太简略了,可以结合业务背景写下细节,第二个太冗余了,缺乏量化指标,一眼玩具
点赞
评论
收藏
分享
04-02 02:28
重庆科技大学 Java
双非JAVA春招投了没面试
😭😭求各位大佬帮忙看看简历是不是有问题
点赞
评论
收藏
分享
昨天 16:59
科大讯飞_教育BG_后端开发(准入职员工)
从投递到OC,我用了三个月
在2025年秋招,我是从八月份开始陆续投递的,是的,没听错,26届的秋招不在是金九银十了,而是金八银九铜十铁十一了。我秋招一共投递300+,美团、京东、滴滴、快手等中大厂,九月份和十月份一直在面试,中间有一个非互联网厂过了,一直催我签三方,好在我拖了两周,最终在十月底拿了offer!
从投递到OC,你用了多久
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
厦门银行AI面试面经
1.1W
2
...
感谢腾讯!双非本暑期成功上岸💪
3243
3
...
快手Java日常实习一面
2923
4
...
字节AI应用开发一面拷打1h🤯
2238
5
...
网易客户端实际等待开奖
2192
6
...
因为不主动加班被裁了
2074
7
...
腾讯云智415暑期一面纯八股!
2051
8
...
面试官角度谈谈还要刷力扣吗
1984
9
...
4.16 滴滴一面
1722
10
...
0408飞书后端2面,“八股+智力题+算法”全都答上来了,依然挂了
1565
创作者周榜
更多
正在热议
更多
#
AI时代还有必要刷leetcode吗?
#
35215次浏览
440人参与
#
想从事Agent应该学习哪些技术?
#
8648次浏览
295人参与
#
有哪些公司在面试时考察AICoding?
#
19532次浏览
350人参与
#
你的第一家实习公司是什么档次?
#
70323次浏览
335人参与
#
HR面都在聊什么?
#
13894次浏览
163人参与
#
26届春招投递记录
#
3647次浏览
42人参与
#
从投递到OC,你用了多久
#
23995次浏览
240人参与
#
大学生该如何认清当下的就业环境?
#
162526次浏览
889人参与
#
什么人最适合大厂?
#
12873次浏览
133人参与
#
哪些公司面试还在问八股?
#
14244次浏览
125人参与
#
父母问你工作找得怎么样,怎么回
#
23274次浏览
285人参与
#
我的求职进度条
#
1117419次浏览
8060人参与
#
如何快速融入团队?
#
50123次浏览
306人参与
#
你觉得什么岗位会被AI替代
#
57281次浏览
371人参与
#
多益网络工作体验
#
68584次浏览
310人参与
#
薪资爆料
#
412705次浏览
2209人参与
#
美团开奖
#
407829次浏览
1805人参与
#
运营来爆料
#
98839次浏览
508人参与
#
你觉得机械有必要实习吗
#
83694次浏览
529人参与
#
OPPO求职进展汇总
#
809106次浏览
5441人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务