1 solutions
-
0
C :
#include <stdio.h> int main(){ int n,i = 2; scanf("%d",&n); while(i < n){ i *= 2; } if(i - n < n - i / 2) printf("%d",i); else printf("%d",i/2); }
C++ :
#include<iostream> using namespace std; int main(){ int n,i; cin>>n; i = 2; while(i < n){ i = i * 2; } if(i - n < n - i / 2){ cout<<i<<endl; }else{ cout<<i / 2 <<endl; } return 0; }
Python :
a=int(input()) b=[] c=1 for i in range(1,33): b.append(c) c=c*2 for i in range(0,32): if(abs(b[i]-a)>=abs(b[i+1]-a) and abs(b[i+1]-a)<=abs(b[i+2]-a)): print(b[i+1]) break
- 1
Information
- ID
- 10812
- Time
- 1000ms
- Memory
- 16MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By