|
2016(4-6月) 码农类 硕士 实习@Fidessa - 网上海投 - 技术电面 在线笔试 | Other | fresh grad应届毕业生
=。=这家公司是英国的,但是是一个NY的VP面我……都查不到linkedin
话不多讲……上来两道题 然后模模糊糊还经常卡的skype面了一下。。。。。。问问project blabla。。。。下面是两个题
一道题是问一个N的数组里面,为K的差的组合有多少。- // Distinct int array, int k find number of pairs have k difference
- // O(n) O(n)
- int numPairs(vector<int> &nums, int k) {
- unordered_set<int> nSet;
- int res = 0;
- for(auto n : nums) {
- if(nSet.count(n + k))
- ++res;
-google 1point3acres - if(nSet.count(n - k))
- ++res;
- nSet.insert(n);
- }
- return res;
- }
- // O(nlogn) O(1)
- int numPairs(vector<int> &nums, int k) {
- sort(nums.begin(), nums.end());
- int res = 0;-google 1point3acres
- for(int i = 0; i < nums.size(); ++i) {
- if(binary_search(nums.begin() + i, nums.end(), nums[i] + k)) {
- ++res;
- }
- }
- return res;
- }
复制代码 第二个题是NASDAQ股票 2A1表示2+(1/A) 3B2表示3+(2/B)
A......2
B......4
C......8
etc.....- <blockquote>float fTod(const char *c) {
复制代码 |
评分
-
1
查看全部评分
-
|