ertjtr
2024-08-07 14:00:22
发布于:广东
#include <bits/stdc++.h>
using namespace std;
int give(int n){
int total=n;
int get=0,last=0;
while(n>=3){
get=n/3;
total+=get;
last=(get+n%3);
n=last;
}
return total;
}
int n;
int main() {
freopen("gift.in", "r", stdin);
freopen("gift.out", "w", stdout);
cin>>n;
int left=1,right=n,ans=0;
while(left<=right){
int mid=(left+right)/2;
if(give(mid)>=n){
right=mid-1;
ans=mid;
}
else{
left=mid+1;
}
}
cout<<ans;
fclose(stdin);
fclose(stdout);
return 0;
}
这里空空如也
有帮助,赞一个