#include<cstdio> typedef long long ll; ll n; void f(ll low, ll up, ll p) { if (n<low || n > up) f(low + (p > 0)*-2 * p, up + (p < 0)*-2 * p, p*-2); if (p < 0 ? n < low - p : n > up - p) { n -= p; printf("1"); } else printf("0"); } int main() { scanf("%lld", &n); f(0, 1, 1); return 0; }
2089번: -2진수
https://www.acmicpc.net/problem/2089
피드 구독하기:
댓글
(
Atom
)
댓글 없음 :
댓글 쓰기