Time Limit: 1000MS | Memory Limit: 32768KB | 64bit IO Format: %I64d & %I64u |
[] [Go Back] []
Description
Daxia is so cute that people loves it so much.
Everyone wants to buy Daxia from Suneast (a business man who sells Daxia).
Suneast is a strange business man. He sells Daxia in a random price from 1, 2, 3, 4, 5…, n.
We now consider the price of Daxia is N $. If a custom has M $(M>=N) in hand and buy Daxia using Q $(N<=Q<=M), Suneast needs to return R=(Q-N) $ to the custom. Suneast is so a strange business man that he take the Q $, and he refuses to look for a change if the custom can’t show him R$ in his hand.
Now, we want to know how many pieces of money people should bring with to buy a Daxia with the exactly price. (The value of money can be any positive integers.)
Input
Output
Sample Input
125
Sample Output
123
Hint
In test case 1: people can bring 1 piece of money: 1$
In test case 2: people can bring 2 pieces of money:
In test case 3: people can bring 3 pieces of money:
1 #include2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 int main() 8 { 9 int n;10 long long a[50];11 a[0]=0;12 for(int i=1;i<50;i++)a[i]=a[i-1]*3+1;13 while(cin>>n)14 {15 for(int i=0;i<50;i++)16 if(n<=a[i])17 {18 cout< <