분류 전체보기(187)
-
[정렬] 수 정렬하기2
2751번: 수 정렬하기 2 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 내장메소드 써버리기 파이썬의 간결함은 정말... 충격적이다 from sys import stdin length = int(stdin.readline()) for i in sorted([int(stdin.readline()) for s in range(length)]): print(i)
2021.06.04 -
[정렬] 수 정렬하기(?)
2750번: 수 정렬하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 두 가지 방법으로 풀었는데, 나름 참신하다고 생각한 방법이 python 내장 정렬이랑 시간이 비슷하게 걸려서 놀랐다. 아래 104ms가 걸린 방법은 기존 정렬 알고리즘이랑 다르게 풀어보고 싶어서 내 나름대로 생각해서 해본 방식이다. length = int(input()) EMPTY = "EMPTY" dummy = [EMPTY] * 2001 for i in range(length): num = int(input()) + 1000 dummy[num] = num resul..
2021.05.30 -
[브루트 포스] 영화감독 숌
1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net n = int(input()) res = [] count = 0 target = '666' while True: if target.find('666') != -1: count = count + 1 if count == n: print(target) break target = str(int(target) + 1)
2021.05.30 -
[브루트 포스] 체스판 다시 칠하기
1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 이 문제를 풀 당시에 매사가 귀찮아서 진짜 무식하게 풀었다 ㅠ from sys import stdin [n, m] = list(map(int, stdin.readline().split(" "))) WHITE_ROW = list("WBWBWBWB") BLACK_ROW = list("BWBWBWBW") matrix = [] for i in range(n): matrix.append(input()) def check_chess_row(row: str, is_w..
2021.05.30 -
[재귀] 하노이 탑
11729번: 하노이 탑 이동 순서 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 www.acmicpc.net 첫 공부를 할 시점에 이 문제를 접했던 기억이 난다. 아무리 생각해도 모르겠어서 이 길이 내 길이 아닌지 심각하게 고민했던 시기가 있었는데... 지금에는 보고 쉽게 풀지만 그 당시에는 정말 내 앞을 가로막은 거대한 벽으로 느껴졌었다. count = int(input()) def move(now, target, empty, c): if c == 1: print(now, target) return move(now, empty, target, c - 1) ..
2021.05.30 -
Next.js HOC 안에 hook 로직 넣기
진행하고 있는 프로젝트의 오픈 준비로 한동안 포스팅을 하지 못하고 있었다. 1차 오픈을 하고 어느정도의 여유를 찾은 만큼, 틈틈이 포스팅을 다시 해보려고 한다. 오늘은 프로젝트 마무리 단계에서 SEO를 위한 각종 분석툴과 GA, 메타테그를 붙이면서 프로젝트 전체에 적용되어야 할 HOC를 만드는 과정에서 배운 내용을 적어보려고 한다. 먼저 HOC란 High Order Component. 즉 고차 컴포넌트이다. 고차 컴포넌트 – React A JavaScript library for building user interfaces ko.reactjs.org 설명에 잘 나와있듯이, 컴포넌트를 인자로 받아 새 컴포넌트를 반환하는 함수이다. 일반적으로 컴포넌트는 props를 받아 UI를 렌더링하지만, HOC는 컴포넌..
2021.05.28