2018-01-06 TIL

4일간의 웹프로그래밍 프리스쿨이 끝났다. 짧은 시간이었지만 전체적인 process를 머리속에 그려볼 수 있는 소중한 기회였다.

주말동안 인프런 장고강의를 마무리하고 파이썬 연습 및 프리스쿨 때 배웠던 것들 한번 더 손에 익혀보고 다음주 개강을 맞이하면 될 것 같다.

어제 Two Scoops of Django를 주문했는데 오늘 도착했다. 노란색 바탕에 아이스크림이 그려져있는 표지가 꽤 상큼하다. 시간 날 때마다 책 읽듯이 읽어보려고 한다.

오늘의 알고리즘 :

  • itertools의 permutations 함수를 이용해서 문자순열 출력하기
from itertools import permutations


def allPermutations(str):
    answer = []
    permList = permutations(str)
    for perm in list(permList):
        answer.append(''.join(perm))
    return ' '.join(answer)


t = int(input())

for i in range(t):
    str1 = input()
    strList = []
    for j in range(len(str1)):
        strList.append(str1[j])
    strList.sort()
    str2 = ''.join(strList)
    print(allPermutations(str2))
  • 2의 배수 검사하기

무난하게 while문으로 풀고 간단하네~ 라고 생각하고 다른 답들을 봤는데 엄청나게 아름다운 코드를 발견했다.

for _ in range(int(input().strip())):
    n = int(input().strip())
    print((n==0 or n&(n-1)) and "NO" or "YES")

연산자를 이용한 한줄짜리 풀이….완전 대박

Comments