[프로그래머스] / [Level 3] / [Python] 기지국 설치
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/12979 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr N의 크기가 2억 이하의 자연수이기 때문에 하나씩 탐색을 하게되면 시간초과를 출력한다. 따라서 제공되는 stations에 포함되지 않는 수의 개수를 계산해서 결과를 출력하도록 하였다. 이와 같은 경우 추가로 설치할 수 있는 '구역'은 1~2, 6~9 이다. 해당 범위의 개수인 2, 4를 (1+w*2)로 나눈 몫이 설치할 수 있는 기지국의 갯수가 된다 (나머지가 있는 경우 + 1). stations..
[프로그래머스] / [Level 3] / [Python] 숫자 게임
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/12987 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 제한 조건에 A와 B 리스트의 최대 길이가 100,000인 것을 확인하고 이중 for문을 사용하면 안된다고 판단하였다. (실제로 구현했을 때 시간초과를 확인할 수 있었다.) 또한, 조건에 A와 B의 리스트의 길이가 같다고 하였기 때문에 A와 B를 동시에 비교하기로 결정하였다. 먼저, A와 B의 리스트를 오름차순으로 정렬하여 비교하기 편하게 세팅하였다. 그 후, 마지막 원소부터 비교하여 A 원소보다..
[프로그래머스] / [Level 3] / [Python] 단어 변환
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr BFS를 사용하여 해결하였다. 시작 단어와 방문하지 않은 단어들을 하나씩 삽입하여 목표 단어에 도달 할 때 까지 탐색하도록 구성하였다. ischangable 함수는 두 단어가 변환 가능한지 판단하도록 하는 함수이다. from collections import deque def ischangable(a, b): count = 0 for _a, _b in zip(a, b): if _a == _b: c..
[프로그래머스] / [Level 3] / [Python] 네트워크 - DFS/BFS
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr BFS를 활용하여 해결하였다. from collections import deque def solution(n, computers): def bfs(i, computers, n): visited[i] = True q = deque() q.append(i) while q: pop = q.popleft() visited[pop] = True for j in range(n): if computers[p..
[프로그래머스] / [Level 3] / [Python] 정수 삼각형
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/43105 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr DP를 사용하여 해결하였다. def solution(triangle): for i, tri in enumerate(triangle[1:]): for j, t in enumerate(tri): a, b = j - 1, j # 한 칸 위의 왼쪽 오른쪽 if j == 0: max_ = triangle[i][b] elif j == i+1: max_ = triangle[i][a] else: max_ = m..
[프로그래머스] / [Level 2] / [Python] 두 원 사이의 정수 쌍
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/181187 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2중 for문을 사용하면 시간초과를 출력한다. x좌표 1부터 r2까지 바로바로 y좌표를 구해서 해당 범위에서 유요한 값을 더해준다. import math def solution(r1, r2): answer = 0 for i in range(1, r2 + 1): # 음수인 경우 제외 r1_y = math.ceil(math.sqrt(math.pow(r1, 2) - math.pow(i, 2))) if..
[GAN] Generative Adversarial Nets
·
Paper Review
GAN History[paper]GAN (Generative Adversarial Nets)은 위와 같이 진짜와 동일해 보이는 이미지(노란색 박스)를 생성하는 모델입니다.2014년 arXive 논문 발표 이후, 다음 그림과 같이 후속 연구들이 계속해서 이어지고 있는 것을 확인할 수 있습니다. 이 포스트에선 GAN부터 시작하여 다양하게 발전한 GAN들을 하나씩 간단하게 살펴보기 위해 작성합니다.Original GANGAN은 서로 다른 두 개의 모델 Generator(생성기)와 Discriminator(판별기)를 적대적으로(Adversarial) 학습시키며 실제 데이터와 비슷한 데이터를 생성합니다. 생성기는 실제(Real) 데이터의 분포를 학습하여 비슷한(Fake) 데이터를 생성하는 모델이며, 판별기는 실제..
[프로그래머스] / [Level 2] / [Python] 우박수열 정적분
·
Coding Test/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/134239 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 수열을 계산하면서 사다리꼴 넓이를 계산한다. def collatz(n): area = [] idx = 0 while n > 1: pn = n if n % 2 == 0: n = n // 2 else: n = n * 3 + 1 idx += 1 area.append((n + pn)/2.0) return area def solution(k, ranges): answer = [] area = collat..
욱근욱
'분류 전체보기' 카테고리의 글 목록 (20 Page)