1.谁是你的潜在朋友:
解题思路:用最简单的哈希(空间换时间),直接把输入的数作为数组的下标
2.分组统计
知识点:memset()函数
库文件:#include<string.h>;函数原型: void *memset(void *s, char ch, unsigned n);
功能:(对于数组)将s中前n个位置的值用ch代替;
例子:int a[20]; memset(a, 0, 20);
解题思路:(难点):将第一行的数和第二行的组对应起来;声明第一行的数对应的组;表明要输出的数
相关代码:
for(int i=0;i<n;i++){
scanf("%d ",&a[i]);
hashTable[0][ a[i] ]=1;}
for(int i=0;i<n;i++){
scanf("%d",&t);
hashTable[t][ a[i] ]++;}
3. Be Unique (20)
解题思路:一个数组存放输入的数,一个数组作哈希数组,利用一个flag作标志位。
4. String Subtraction
解题思路:一个数组作哈希存放s2的标志位,遍历s1遇到非标志位输出字符。