본문 바로가기

알고리즘 & PS69

[Python] 프로그래머스 Lv 2 - 가장 큰 수 프로그래머스 Lv 2 문제 중 가장 큰 수 문제이다. programmers.co.kr/learn/courses/30/lessons/42746 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 programmers.co.kr 1. 나의 최초 풀이 그야말로 삽질 풀이이다. 원래 숫자와, 대소 비교를 위해 변환한 숫자를 리스트로 묶어서 정렬 후, 변환 숫자가 큰 순서대로 원래 숫자를 붙이는 알고리즘이다. # 가장 큰 수 나의 정답 import math def solution(numbe.. 2021. 4. 21.
[알고리즘] Stack - 수식의 표현(수정) 프로그래머스 데브코스 진행 중 배우게 된 알고리즘 관련 내용을 정리해보았다. 출처 : 프로그래머스 어서와, 자료구조와 알고리즘은 처음이지? 문제 설명 '문자열'로 주어진 수식이 있다. 이 수식의 값을 계산할 수 있을까? 중위 표현식, 후위 표현식 중위 표현식이란, 우리가 흔히 표현하는 수식의 형태를 뜻한다. 예시) (A + B) * (C + D) 후위 표현식이란, 연산자를 뒤에 표현하는 방법이다. 위의 식을 후위 표현식으로 바꾸면 다음과 같다. 예시) (A + B) * (C + D) -> AB+CD+* 1단계) 중위 표현식을 후위 표현식으로 변경 우리가 사용하는 중위 표현식으로는 수식의 값을 올바르게 계산하기가 어렵다. 그 이유는 다음 두 가지가 존재한다. - 사칙연산에 우선순위가 존재한다. 또한 우선순.. 2021. 4. 20.
[Python] 프로그래머스 Lv 1. 나머지 한 점 프로그래머스 Lv 1. 나머지 한 점 풀이를 통한 배운 내용을 정리한다. 문제는 간단하다. x, y축에 평행한 직사각형의 세 점이 주어질 때, 나머지 한 점이 어디있는지를 찾는 것이 문제이다. 각 x, y값 별로 2개씩 나와야 한다는 것에서 1개만 나온 값을 찾는 것이 목표이다. 내가 짠 코드는 다음과 같다. def solution(v): answer = [0, 0] x_axis = [0, 0, 0] y_axis = [0, 0, 0] for i in range(0, 3): x_axis[i] = v[i][0] y_axis[i] = v[i][1] if x_axis[0] == x_axis[1]: answer[0] = x_axis[2] else: if x_axis[0] == x_axis[2]: answer[0].. 2021. 4. 20.