include<cmath>
log 相关;
1 ,log10()
2 ,ln()
3 ,log(m)/log(n)=log(n,m);
相上下取整 ceil(),floor()
#include<cstring>
1 ,strncmp()
int strncmp ( const char * str1, const char * str2, size_t n );
返回值
若str1与str2的前n个字符相同,则返回0;若s1大于s2,则返回大于0的值;若s1 若小于s2,则返回小于0的值
比较原理
字符串大小的比较是以ASCII 码表上的顺序来决定,此顺序亦为字符的值。strncmp()首先将s1 第一个字符值减去s2 第一个字符值,若差值为0 则再继续比较下个字符,直到字符结束标志’\0’,若差值不为0,则将差值返回。例如字符串”Ac”和”ba”比较则会返回字符”A”(65)和’b’(98)的差值(-33)。注意:要比较的字符包括字符串结束标志’\0’,而且一旦遇到’\0’就结束比较,无论n是多少,不再继续比较后边的字符。
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int main()
{
ll n,m,k,t=0;
cin>>t;
{
for(ll i=1; i<=t; i++)
{
cin>>n>>m>>k;
ll ans=(ll)(ceil(log(n)/log(2))+ceil(log(m)/log(2))+ceil(log(k)/log(2)));
printf("Case #%lld: %lld %lld\n",i,n*m*k-1,ans);
}
}
return 0;
}
/*#include<bits/stdc++.h>
using namespace std;
int main()
{
char s[10]="abcdef",st[10][10]={"abcaaaa"};
int n;
while(cin>>n)
{
cout<<strncmp(s,st[0],n)<<endl;
}
return 0;
}*/
%*C 跳过一个字符
//char 数组转化int ,或者 atoi(),atoll();
int main(){
char a[10]="123";
int n;
sscanf(a,"%d",&n);
printf("%d",n);
return 0;
}