QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#65152#5115. Clone RanranJWChen#AC ✓38ms3668kbC++14703b2022-11-27 19:45:482022-11-27 19:45:51

Judging History

你现在查看的是最新测评结果

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2022-11-27 19:45:51]
  • 评测
  • 测评结果:AC
  • 用时:38ms
  • 内存:3668kb
  • [2022-11-27 19:45:48]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll T,a,b,c;
ll p[1001],s;
ll ans;
int main()
{
    scanf("%lld",&T);
    p[0]=1;
    for(int i=1;;i++)
    {
        p[i]=2*p[i-1];
        if(p[i]>=1e9)
        {
            s=i;
            break;
        }
    }
//    printf("%lld %lld\n",s,p[s]);
    while(T--)
    {
        scanf("%lld%lld%lld",&a,&b,&c);
        ans=0;
        for(ll i=0;i<=30;++i)
        {
            ll tmp;
            tmp=c/p[i];
            if(c%p[i]!=0) tmp++;
            if(ans==0) ans=a*i+tmp*b;
            else ans=min(ans,a*i+tmp*b);
            if(p[i]>=c) break;
        }
        printf("%lld\n",ans);
    }
}

詳細信息

Test #1:

score: 100
Accepted
time: 2ms
memory: 3668kb

input:

5
1 1 1
2 3 3
9 9 9
3 26 47
1064 822 1048576

output:

1
7
45
44
21860

result:

ok 5 number(s): "1 7 45 44 21860"

Test #2:

score: 0
Accepted
time: 38ms
memory: 3484kb

input:

99500
1000000000 1000000000 1000000000
1000000000 1000000000 999999999
1000000000 1000000000 999999998
1000000000 1000000000 999999997
1000000000 1000000000 999999996
1000000000 1000000000 999999995
1000000000 1000000000 999999994
1000000000 1000000000 999999993
1000000000 1000000000 999999992
10000...

output:

31000000000
31000000000
31000000000
31000000000
31000000000
31000000000
31000000000
31000000000
31000000000
31000000000
30999999998
30999999998
30999999998
30999999998
30999999998
30999999998
30999999998
30999999998
30999999998
30999999998
30999999996
30999999996
30999999996
30999999996
30999999996
...

result:

ok 99500 numbers