일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 페어프로그래밍
- 인텔리제이
- 스프링
- FilterChain
- Spring Security
- 컬렉션프레임워크
- spring data jpa
- 자바
- 거듭제곱
- 자료구조
- 제네릭스
- HTML
- fibonacci
- CSS
- 그리디
- 백엔드
- Publishing
- CLI명령어
- 깃허브
- 백준알고리즘
- 첫글자대문자
- java
- 알고리즘
- 부트캠프
- 데일리코딩
- Spring Data JDBC
- 문자열뒤집기
- 회고
- testing
- 계산기만들기
Archives
- Today
- Total
나의 모양
[DailyCoding] 03 | powerOfTwo 본문
✍🏻 Description
- 2의 거듭제곱 여부 판단
- 거듭제곱: 같은 수를 거듭하여 곱함 ⇒ 주어진 수를 주어진 횟수만큼 반복
📝 Flow
- 2의 거듭제곱?
2의 0승 == 1
2 * 2 = 4
2 * 2 * 2 = 8
2 * 2 * 2 * 2 = 16
2 * 2 * 2 * 2 * 2 = 32
- 짝수라고 다 거듭제곱은 아님 => 6, 10 이런거
6 = 2 * 3
10 = 2 * 5
- 로직흐름: 2로 나눈 나머지는 다 0?
초기값: 8
| 몫 | 나머지
1회차 | 4 | 0
2회차 | 2 | 0
초기값: 10
| 몫 | 나머지
1회차 | 5 | 0
2회차 | 2 | 1
초기값: 7
| 몫 | 나머지
1회차 | 3 | 1
2회차 | 1 | 1
=> 나머지가 1이 하나라도 있으면 거듭제곱 X
=> 모두 0이면 거듭제곱!!!
🤯 Difficulty
- 거듭제곱의 정확한 정의를 몰랐음
- 짝수라고 다 거듭제곱이 아님
- 2의 0승을 0으로 착각 (...)
🪆 Attempt
- 거듭제곱 검색
- 손으로 직접 그려보면서 흐름 파악
📚 TIL
- 거듭제곱이 무엇인지 알게 됨
👩🏻💻 Implementation
if(num == 2) return true;
while(num > 2) {
num /= 2;
long rest = num % 2;
if(rest == 1) return false;
}
return true;
'SEB > Daily Coding' 카테고리의 다른 글
[DailyCoding] 08 | convertDoubleSpaceToSingle (0) | 2022.08.01 |
---|---|
[DailyCoding] 07 | convertListToObject (0) | 2022.07.29 |
[DailyCoding] 06 | letterCapitalize (0) | 2022.07.28 |
[DailyCoding] 05 | firstReverse (0) | 2022.07.27 |
[DailyCoding] 04 | firstCharacter (0) | 2022.07.26 |
Comments