百度面试题
来源:互联网 发布:mac如何设置两个桌面 编辑:程序博客网 时间:2024/06/06 07:05
1.给你一个自然数n,求[6,n]之内的所有素数中,两两之和为偶数的那些偶数。
void EratosthenesSieve(vector<bool> &A,int n){ for(int i=2;i*i<=n;++i) { if(A[i]) { for(int j=i*i;j<=n;j+=i)A[j]=false; } } }vector<int> f(int n){ vector<int> result; if(n<6)return result; vector<bool> A(n+1,true); EratosthenesSieve(A,n); for(int i=6;i<=n-1;++i) { if(!A[i])continue; for(int j=i+1;j<=n;++j) { if(!A[j])continue; result.push_back(i+j); } } result.erase(unique(result.begin(),result.end()),result.end()); return result;}
2.用天平(只能比较,不能称重)从一堆小球中找出其中唯一一个较轻的,使用x次天平,最多可以从y个小球中找出较轻的那个,求y与x的关系式。
y=3^x
3.输入一个正整数数组,将它们连接起来排成一个数,输出能排出的所有数字中最小的一个。例如,输入数组{32,321},则输出32132。
//仿函数struct cmp{ bool operator()(string x,string y) { return (x+y)<(y+x); }};string f(vector<int> a){ int n=a.size(); vector<string> b(n); for(int i=0;i<n;++i) { stringstream stream; stream<<a[i]; stream>>b[i]; } sort(b.begin(),b.end(),cmp()); string result; for(int i=0;i<n;++i)result+=b[i]; return result;}
0 0
- 百度面试题
- 百度面试题
- 百度面试题
- 百度面试题
- 百度面试题
- 2007 百度面试题
- 百度面试题一道
- 百度面试题
- 百度面试题
- 百度面试题
- 百度面试题
- 百度面试题
- 百度面试题
- 百度面试题
- 百度面试题1
- 百度面试题
- 百度面试题
- 腾讯 百度 面试题
- is Mogs safe for buying aion kinah
- 使用NSClassFromString
- swift学习三:?和!理解
- 通过profile绑定执行计划
- 两道Fibonnaci简单题(HDU1021,1568)
- 百度面试题
- javascript数据结构和算法
- 广告软件屏蔽
- 动态规划之三角形求值问题
- google code 免费svn服务器使用说明
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 如何更改ORACLE 用户的 expired状态
- Remove Nth Node From End of List
- 内存管理