일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- react hook
- hook
- React 18
- Next13
- 고급안내서
- background tab
- react-helmet
- Render Props
- React API 참고서
- background setInterval
- React 공식문서
- react
- background setttimeout
- next13 head
- context
- Nextjs
- Nextjs React 18
- getUTCDate
- notFound()
- background: url
- React 고급 안내서
- RTK Query
- React 18 Nextjs
- codingtest
- Babel
- CSS
- Javascript
- React 고급안내서
- Programmers
- React18
Archives
- Today
- Total
akjfal
[Programmers] 예상 대진표도움말 본문
// 부전승은 x
// A와 B를 포함한 가장 작은 2^n이 무엇인가?를 구해야한다.
// 어차피 2^n의 전 아니면 후다(위에서부터 내려왔을때)
// 맨 처음으로 달라지는 구간의 n값이다.
// n - 1
// 1. 2^n-1 과 A B비교
// 2. 같은 구간에 있다면 n-1
// 2-1. 둘다 2^n보다 크다면 a,b 둘다 -2^n
// 3. 다른 구간에 있다면 n+1값은 정답
class Solution
{
public int solution(int n, int a, int b)
{
int answer = 1;
n -= 1;
while(n >= 0){
boolean isA = Math.pow(2, n) < a;
boolean isB = Math.pow(2, n) < b;
if(isA == isB){
if(isA == true && isB == true){
a -= Math.pow(2, n);
b -= Math.pow(2, n);
}
n -= 1;
}else{
answer = n + 1;
break;
}
}
return answer;
}
}
조건만 생각하면 금방 푸는 문제다.
'알고리즘 > programmers' 카테고리의 다른 글
[Programmers] 수식 최대화 (0) | 2021.06.17 |
---|---|
[Programmers] 괄호 회전하기 (0) | 2021.06.17 |
[Programmers] 게임 맵 최단거리 (0) | 2021.06.16 |
프로그래머스 42583번 java (0) | 2021.01.15 |
프로그래머스 68645번 java (0) | 2021.01.14 |
Comments