上取整,下取整函数:ceil() 向上取整,floor()向下取整。
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int main(){
int t,n,m;
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&n,&m);
printf("%d %d\n",m,(int)ceil(1.0*m/(n-m+1)));
}
return 0;
}
#include<bits/stdc++.h>
using namespace std;
int n, num;
int arr[40];
int main()
{
int t;
scanf("%d", &t);
while (t--)
{
int ans = 0;
scanf("%d", &n);
memset(arr,0,sizeof(arr));
for (int i = 1;i <= n; ++i)
{
scanf("%d", &num);
int cnt = 0;
while(num)//取位数
{
cnt++;
num >>= 1;
}
arr[cnt]++;
ans = max(ans, arr[cnt]);
}
printf("%d\n", ans);
}
return 0;
}