请问BOA cash prepaid visa card要收fee吗?# PennySaver - 省钱一族
c*y
1 楼
1. 大数乘法
给定两个非常大的数,写出一个函数返回它们的乘积。可以自己定义需要用到的数据结
构来表示每个数。我用了vector。
2. 系统设计的问题。
给定一个数据中心,如何收集statistics在给定的时间范围(t0,t1)。
这是系统设计题,没啥代表性。
3. 给定一个点,找出一百万个点中距离这个点最近的k个点。
用heap来存当前最近的k个点,然后scan这一百万个点一遍。
4. 给定一个函数fetch10k(),要求实现另外一个函数fetch()。这个题的说明比较复杂
,最后没有写完。具体说明如下。
fetch10k()是给定的,signature如下。
int fetch10k(char *buffer)
这个函数干的事情是从底层读出数据,写到传入的buffer中。这个buffer是一个默认
10k bytes大小的空buffer。返回类型int,返回写入后buffer中数据的size。
注意返回的数据大小和底层的数据大小有关。如果底层数据size是0,那么返回也是0,
因为buffer里什么也没有写。
如果底层数据是小于10k,例如5k,那么返回值是5k,因为只有5k的数据,并且全部写
到10k的空buffer中去了。
如果底层数据是大于或者等于10k,那么返回值是10k。因为10k的数据被写入到buffer
中。注意每次在call这个函数的时候,底层数据的指针也被移动,使得连续的fetch10k
的call读出连续的底层数据。
要求用fetch10k实现的函数fetch(),signature如下。
int fetch(int size, char *buffer)
这里size是指定希望读出的数据大小,buffer是用来存放读出的数据的(假设足够大)
。返回值int是实际从底层数据读出的数据大小。
给几个例子说明可能返回的情况。
(1)size = 8k,但是底层数据只有2k,那么返回值是2k。
(2)size = 8k,底层数据有20k,那么返回值是8k。
(3)size = 8k,底层数据是0,那么返回值是0。
另外一个很重要的要求是能够用这个函数连续从地底读出一段数据。下面是个例子。
底层数据一共有24k,要求能够用三个fetch(8k,buffer)把这个24k的数据读出来。在这
三次fetch的call中,每次读出8k的数据,放到指定的位置(通过buffer)。对于这个
要求,需要特别考虑在一次fetch10k的call中,如何把剩余的2k的数据保留下来,并且
提供给下一次的fetch的call。
好吧,刚开始没有考虑到最后的那个要求,给了一个解法。后他指出我的解法不满足最
后的那个条件。我就改了code,没改完时间就到了。
这个题模糊的地方太多了。
给定两个非常大的数,写出一个函数返回它们的乘积。可以自己定义需要用到的数据结
构来表示每个数。我用了vector。
2. 系统设计的问题。
给定一个数据中心,如何收集statistics在给定的时间范围(t0,t1)。
这是系统设计题,没啥代表性。
3. 给定一个点,找出一百万个点中距离这个点最近的k个点。
用heap来存当前最近的k个点,然后scan这一百万个点一遍。
4. 给定一个函数fetch10k(),要求实现另外一个函数fetch()。这个题的说明比较复杂
,最后没有写完。具体说明如下。
fetch10k()是给定的,signature如下。
int fetch10k(char *buffer)
这个函数干的事情是从底层读出数据,写到传入的buffer中。这个buffer是一个默认
10k bytes大小的空buffer。返回类型int,返回写入后buffer中数据的size。
注意返回的数据大小和底层的数据大小有关。如果底层数据size是0,那么返回也是0,
因为buffer里什么也没有写。
如果底层数据是小于10k,例如5k,那么返回值是5k,因为只有5k的数据,并且全部写
到10k的空buffer中去了。
如果底层数据是大于或者等于10k,那么返回值是10k。因为10k的数据被写入到buffer
中。注意每次在call这个函数的时候,底层数据的指针也被移动,使得连续的fetch10k
的call读出连续的底层数据。
要求用fetch10k实现的函数fetch(),signature如下。
int fetch(int size, char *buffer)
这里size是指定希望读出的数据大小,buffer是用来存放读出的数据的(假设足够大)
。返回值int是实际从底层数据读出的数据大小。
给几个例子说明可能返回的情况。
(1)size = 8k,但是底层数据只有2k,那么返回值是2k。
(2)size = 8k,底层数据有20k,那么返回值是8k。
(3)size = 8k,底层数据是0,那么返回值是0。
另外一个很重要的要求是能够用这个函数连续从地底读出一段数据。下面是个例子。
底层数据一共有24k,要求能够用三个fetch(8k,buffer)把这个24k的数据读出来。在这
三次fetch的call中,每次读出8k的数据,放到指定的位置(通过buffer)。对于这个
要求,需要特别考虑在一次fetch10k的call中,如何把剩余的2k的数据保留下来,并且
提供给下一次的fetch的call。
好吧,刚开始没有考虑到最后的那个要求,给了一个解法。后他指出我的解法不满足最
后的那个条件。我就改了code,没改完时间就到了。
这个题模糊的地方太多了。