일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- typeORM
- nodejs
- dfs
- JavaScript
- Queue
- GIT
- class
- 공룡게임
- OCR
- AWS
- Nest.js
- 자료구조
- Sequelize
- MySQL
- 게임
- Bull
- flask
- react
- 정렬
- jest
- game
- Python
- Express
- Dinosaur
- nestjs
- TypeScript
- MongoDB
- mongoose
- cookie
- Today
- Total
목록자료구조알고리즘/문제풀이 (68)
포시코딩

문제 https://school.programmers.co.kr/learn/courses/30/lessons/120808 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 1 - 실패 def solution(denum1, num1, denum2, num2): denum = 0 num = 0 if num1 > num2: num1, num2 = num2, num1 denum1, denum2 = denum2, denum1 if num2 % num1 == 0: denum = denum1*(num2//num1) + denum2 num = num2 else: ..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120876 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 A 1. 겹치지 않게 모든 사람이 가위바위보 하는 방법을 응용해 2차원 배열 내 모든 좌표를 서로 비교한다. 2. 두 좌표 A, B의 시작, 끝 좌표에 대해 (시작:s, 끝: e) if A.e
문제 https://www.youtube.com/watch?v=OzFXiukhv8o&list=PLsMufJgu5933ZkBCHS7bQTx0bncjwi4PK&index=9 내 풀이 str = '(()))(' def test(str): stack = [] try: for char in str: # print(char) if char == '(': stack.append(char) else: stack.pop() if len(stack) > 0: return False # '(' 더 많음 else: return True except: return False # ')' 더 많음 result = test(str) print(result) stack을 이용해 괄호'()' 의 짝을 맞추는 문제를 효율적으로 푸는 방법..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120894 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 def solution(numbers): answer_str = '' number_dict = { 'zero': '0', 'one': '1', 'two': '2', 'three': '3', 'four': '4', 'five': '5', 'six': '6', 'seven': '7', 'eight': '8', 'nine': '9' } target = '' for char in numb..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120861 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 def solution(keyinput, board): character_x = 0 character_y = 0 max_right = (board[0]-1)/2 max_left = -(board[0]-1)/2 max_up = (board[1]-1)/2 max_down = -(board[1]-1)/2 for e in keyinput: if e == 'right' and charact..
문제 Q. 다음과 같이 0 혹은 양의 정수로만 이루어진 배열이 있을 때, 왼쪽부터 오른쪽으로 하나씩 모든 숫자를 확인하며 숫자 사이에 '✕' 혹은 '+' 연산자를 넣어 결과적으로 가장 큰 수를 구하는 프로그램을 작성하시오. 단, '+' 보다 '✕' 를 먼저 계산하는 일반적인 방식과는 달리, 모든 연산은 왼쪽에서 순서대로 이루어진다. 풀이 1 def result(array): answer = 0 while len(array) > 0: target = array.pop(0) plus = answer + target multi = answer * target if plus > multi: answer = plus else: answer = multi return answer print("정답 = 728 현재 ..
처음엔 나도 다른 사람들처럼 for문 두개로 2부터 n까지 모든 수로 나눠보며 소수를 찾는 방법으로 풀이했는데 정확도만 측정하는 테스트에서조차 시간초과나는 테스트케이스가 있었다. 솔직히 이런 소수를 다뤄본적이 많이 없었기 때문에 해당 문제의 질문답변 항목을 보던중에 엄상우 라는 분의 https://school.programmers.co.kr/questions/21359 글에서 정수론 관련하여 소수의 대한 성질을 이용해 연산 과정을 급격하게 줄이는 방법을 알게됨 해당 글의 3번은 앞의 1, 2번에서 다 해결되므로 알고만 있는거로 하고 (소수인지 여부를 묻는데 짝수면 1, 2번의 과정 없이도 바로 판별이 가능하므로) n은 2이상 1000000이하의 자연수고 n이 소수인지의 여부를 묻는게 아닌 그 사이에 소수..