qwb去面试
来源:互联网 发布:linux驱动模块编译 编辑:程序博客网 时间:2024/05/20 19:19
点击打开链接
Description
某一天,qwb去WCfun面试,面试官问了他一个问题:把一个正整数n拆分成若干个正整数的和,请求出这些数乘积的最大值。
qwb比较猥琐,借故上厕所偷偷上网求助,聪明的你能帮助他吗?
qwb比较猥琐,借故上厕所偷偷上网求助,聪明的你能帮助他吗?
Input
第一行为一个正整数T.(T<=100000)
接下来T行,每行一个正整数n(n<=1e9),意义如题目所述。
接下来T行,每行一个正整数n(n<=1e9),意义如题目所述。
Output
每一行输出一个整数,表示乘积的最大值,由于答案可能很大,请将答案对109+7取模后输出。
Sample Input
225
Sample Output
26
HINT
2=2
5=2+3
题解, 多拆几组就发现,能分成三肯定要分成三。
最后mod3 余 1 拆出来个3 乘以4
余2 的话 直接乘2
否则直接快速幂。
这题wa了好几次, 因为我直接快速幂了,最后mod3余1时,结果先除以三,又乘以4. 因为中间有mod 所以结果就错了。
#include<bits/stdc++.h>#define ll long longusing namespace std;const ll mod = 1000000007;int T;ll kuai(int t){ ll ret=1,s=3; while(t){ if(t&1) ret=ret*s%mod; t/=2; s=s*s%mod; } return ret;}int main(){ scanf("%d",&T); ll ans,n; while(T--){ scanf("%lld",&n); if(n==1||n==2||n==3||n==4) { printf("%d\n",n);continue; } int t=n/3; int m=n%3; if(m==0) ans=kuai(t); if(m==1) ans=kuai(t-1)*4%mod; if(m==2) ans=kuai(t)*2%mod; printf("%lld\n",ans); } return 0;}
点击打开链接
Description
某一天,qwb去WCfun面试,面试官问了他一个问题:把一个正整数n拆分成若干个正整数的和,请求出这些数乘积的最大值。
qwb比较猥琐,借故上厕所偷偷上网求助,聪明的你能帮助他吗?
qwb比较猥琐,借故上厕所偷偷上网求助,聪明的你能帮助他吗?
Input
第一行为一个正整数T.(T<=100000)
接下来T行,每行一个正整数n(n<=1e9),意义如题目所述。
接下来T行,每行一个正整数n(n<=1e9),意义如题目所述。
Output
每一行输出一个整数,表示乘积的最大值,由于答案可能很大,请将答案对109+7取模后输出。
Sample Input
225
Sample Output
26
HINT
2=2
5=2+3
题解, 多拆几组就发现,能分成三肯定要分成三。
最后mod3 余 1 拆出来个3 乘以4
余2 的话 直接乘2
否则直接快速幂。
这题wa了好几次, 因为我直接快速幂了,最后mod3余1时,结果先除以三,又乘以4. 因为中间有mod 所以结果就错了。
#include<bits/stdc++.h>#define ll long longusing namespace std;const ll mod = 1000000007;int T;ll kuai(int t){ ll ret=1,s=3; while(t){ if(t&1) ret=ret*s%mod; t/=2; s=s*s%mod; } return ret;}int main(){ scanf("%d",&T); ll ans,n; while(T--){ scanf("%lld",&n); if(n==1||n==2||n==3||n==4) { printf("%d\n",n);continue; } int t=n/3; int m=n%3; if(m==0) ans=kuai(t); if(m==1) ans=kuai(t-1)*4%mod; if(m==2) ans=kuai(t)*2%mod; printf("%lld\n",ans); } return 0;}
阅读全文
0 0
- qwb去面试 思维
- qwb去面试
- qwb去面试
- Problem G: qwb去面试
- qwb去面试 思路+代码
- qwb去面试 小小的思维
- 之江学院2017ACM 校赛Problem G qwb去面试
- 之江学院2017ACM 校赛Problem G: qwb去面试
- 2017年第0届浙江工业大学之江学院程序设计竞赛决赛 G.qwb去面试【贪心】
- 2017年第0届浙江工业大学之江学院程序设计竞赛决赛 G: qwb去面试 [找规律]【思维】
- 2017年第0届浙江工业大学之江学院程序设计竞赛决赛 Problem G: qwb去面试(数学问题)
- 去上海盛大网络面试
- 明天要去面试...........
- 明天去面试,加油
- 今天跑去面试
- 如何去面试
- 今天去面试了
- 去面试了!
- 编写一个方法,返回100个互不重复,且顺序被打乱的集合
- Java常用帮助类(1)验证帮助类
- SSM项目整合
- Java类加载
- 手把手教你把Vim改装成一个IDE编程环境(图文)
- qwb去面试
- Effective Modern C++ 笔记(二)——写法规范
- 322. Coin Change
- hdu 1394 Minimum Inversion Number(树状数组求逆序数)
- Java常见帮助类(2)字符串处理类
- strace tnsping
- 使用cygwin移植Linux的项目到Windows下之总结
- Linux环境下安装DB2V10.5_server_x86_64说明
- Python+NLTK自然语言处理学习(一):环境搭建