文章
11
粉丝
0
获赞
31
访问
1.4k
#include <stdio.h>
#include <string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>
int main()
{
int t;
scanf("%d",&t);
int i;
for(i=0;i<t;i++)
{
int n;
scanf("%d",&n);
int hash[10000]={0};
int *a=(int *)malloc(sizeof(int)*n);
int j;
for(j=0;j<n;j++)
{
scanf("%d",&a[j]);
hash[a[j]]++;
}
if(hash[2048]!=0)
...
登录后发布评论
若原序列没有2048,则2048只能通过两个相同的2的幂次方数相加得到2048,所以,从1开始处理有两个以上的2的幂次方数。