Loading...
2022. 5. 19. 02:00

2진수 변환을 가장 빠르게 하는 방법

1. 문제 주어진 자연수 n을 이진수로 변환할 때 1의 개수와 정확히 같은 1의 개수를 가지는 n보다 작은 자연수의 이진수 변환은 몇개나 있는지 구하는 solution 함수를 작성하면? 2. 제한사항 n은 $2^{30}$이하의 자연수 3. 나의 풀이 처음에는 그냥 format을 이용해 n을 이진수로 변환하고 for문을 이용해 1부터 n보다 작은 자연수까지 모두 이진수로 변환해보면서 1의 개수가 같으면 answer에 1을 더하는 방식으로 구했다 def solution(n): answer = 0 bin_n_one = format(n,'b').count('1') for i in range(1,n): if bin_n_one == format(i,'b').count('1'): answer += 1 return a..

2022. 1. 21. 19:59

문자열 출력 포맷팅(format)

1. multiple printing print(a,b,c…)하면 a,b,c를 ,기준으로 1칸씩 띄어서 붙여 출력 띄어쓰기 싫다면 +연산 활용 2. 기본 기호 %d는 정수형, %s는 문자열, %f는 부동소수점(실수형), %c는 문자 1글자(여러 글자면 1글자만 가져오는 것이 아니고 에러남) 3. %포맷팅 %d에 num값 3을 넣고 %s에 string값 ‘nice’를 각각 넣어 출력 4. {}포맷팅 {}방식은 %d나 %s를 따로 쓰지 않아도 된다는 편리함 {}안에 숫자를 넣어 넣어줄 순서를 지정해주기도 함 5. padding %10s라고 쓰면 10자리 공간을 비우고 오른쪽 정렬을 시킴 s=’abc’라고 할 경우 %5s로 포맷팅하면 위 그림과 같이 출력된다 %5.3f를 하면 5자리 비우고 부동소수점을 3자리..