不是VIP会员,不能显示答案

题目解答

题目:
#include<bits/stdc++.h>

using namespace std;

int a[105],n,x,ans=0;

int main ()

{

cin>>n;

for (int i=1; i<=n; i++)

{

cin>>x;

a[x]++;

}

for (int i=0; i<=100; i++)

{

ans+=a[i]%2;

a[i+1]+=a[i]/2;

}

cout<<ans<<endl ;

return 0;

}


假设输入的n是不超过20的正整数,x是不超过100非负整数,完成下面的判断题和单选题:

判断题

1) 该算法的输出可能大于n。( )

2) 当n=59时,存在一种输入,使得输出的ans为1。 ( )

3) 当n=60时,存在一种输入,使得输出的ans为1。 ( )


选择题

4) 若输入为5 1 1 2 3 3,则输出为()。

5) 若输入的n 等于35,接下来的输入全为0,则输出为( )。

6) 若输入的n等于15,接下来的输入全为98,则输出为( )。
考点:
分析:
解答:
评论:
老师: