【每日面试题】2012年腾讯暑期实习生招聘笔试附加题1
2012-04-20 21:06
776 查看
两个数组a
,b
,其中A
的各个元素值已知,现给b[i]赋值,b[i] = a[0]*a[1]*a[2]...*a[N-1]/a[i];
要求:
1.不准用除法运算
2.除了循环计数值,a
,b
外,不准再用其他任何变量(包括局部变量,全局变量等)
3.满足时间复杂度O(n),空间复杂度O(1)。
代码如下:
,b
,其中A
的各个元素值已知,现给b[i]赋值,b[i] = a[0]*a[1]*a[2]...*a[N-1]/a[i];
要求:
1.不准用除法运算
2.除了循环计数值,a
,b
外,不准再用其他任何变量(包括局部变量,全局变量等)
3.满足时间复杂度O(n),空间复杂度O(1)。
代码如下:
void qupdate(int *a,int *b,int n) { if(n<1) return; b[0]=1; for(int i=1;i<n;i++) b[i]=a[i-1]*b[i-1]; for(int i=n-2;i>=0;i--) { a[i]=a[n-1]; a[n-1]=a[n-1]*a[i]; } a[n-1]=1; for(int i=0;i<n;i++) b[i]=a[i]*b[i]; }
相关文章推荐
- 面积最大的全1子矩阵(腾讯2012年暑期实习生招聘面试二面试题)
- 面试----2015腾讯3-4月实习生招聘(笔试,一面,二面)
- 腾讯2018暑期实习生招聘在线笔试之字符串操作
- 腾讯2014年实习生招聘笔试面试经历
- 腾讯2014年实习生招聘笔试面试经历
- 2012年腾讯实习生笔试附加题
- 腾讯2014年实习生招聘笔试面试经历
- 2017腾讯暑期实习生之笔试面试
- 腾讯2014年实习生招聘笔试面试经历
- 腾讯2014年实习生招聘笔试+两次面试经历
- 腾讯2014年实习生招聘笔试面试经历
- 腾讯2014年实习生招聘笔试面试经历
- 腾讯2010暑期实习生笔试面试经历
- 腾讯2014年实习生招聘笔试面试经历
- 腾讯2014年实习生招聘笔试面试经历
- [置顶] 2017腾讯暑期实习生从笔试到面试总结(附带华为、阿里面试经历)
- 华为、腾讯实习生招聘笔试、面试经验
- 2011阿里巴巴集团实习生招聘笔试题 C&C++ 腾讯附加题
- 2013年腾讯暑期实习生招聘面试总结
- 腾讯 5.20 2017暑期软件开发实习生笔试+面试