jzoj1273-袁绍的刁难【进制转换】
程序员文章站
2024-03-17 13:21:52
...
正题
题目大意
第个武将价值为,求第大的选择武将价值之和
解题思路
因为
所以其实答案就是转成二进制之后强行转成3进制的值。
#include<cstdio>
#include<cmath>
#define ll long long
using namespace std;
ll n,k,z,ans,w;
int main()
{
//freopen("recruitment.in","r",stdin);
//freopen("recruitment.out","w",stdout);
scanf("%lld",&n);
while(n--){
scanf("%lld",&k);
z=1;ans=0;w=0;
while(k){
if(z*2>k){
k-=z;
ans+=pow(3,w);
z=1;w=0;
}
else z*=2,w++;
}
printf("%lld\n",ans);
}
}
上一篇: CSS3与H5的学习