본문 바로가기

전체 글126

[백준/파이썬] AC 문제 링크 https://www.acmicpc.net/problem/5430 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net 실패한 첫 코드 from collections import deque import re t=int(input()) for _ in range(t): p=input() p=list(p) #함수를 쪼개서 리스트로 넣기 n=int(input()) num=input() #num=re.sub('[|,|]','',num) if num=='[]': print('error') continue num=num.replace('[','') temp='' q=de.. 2022. 8. 22.
[프로그래머스/파이썬] 프린터 https://school.programmers.co.kr/learn/courses/30/lessons/42587 문제 링크(Programmers Level2) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 처음에는 PriorityQueue 모듈을 이용해서 풀려고 했는데, 원소를 꺼냈을 때 현재 값이랑 비교해서 뒤로 넘길 방법이 떠오르지 않았다. 그래서 그냥 큐를 이용해서 풀었다. 0부터 입력리스트 숫자만큼 차례대로 리스트를 생성해서 큐에 넣어준다. 입력 리스트도 큐에 넣어준다. 큐에 원소가 없을 때 까지 루프 돌면서 먼저 큐에서 가장 큰 값을.. 2022. 8. 16.
[프로그래머스/파이썬] 숫자의 표현 https://school.programmers.co.kr/learn/courses/30/lessons/12924 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(n): answer = 0 dp=[i for i in range(1,n+1)] for i in range(n): sum_dp=0 for j in range(i,n): sum_dp+=dp[j] if sum_dp==n: answer+=1 break elif sum_dp>n: break return answer 풀이 과정&회고 헐 프로그래머스 Level2 문제인데.. 2022. 8. 9.
[프로그래머스/python] 기능개발 https://school.programmers.co.kr/learn/courses/30/lessons/42586 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이과정 첫 번째코드(실패한 코드와 아이디어) def solution(progresses, speeds): answer = [] result = [] # 각 pro의 값+각 speeds의 값>=100이 될 때 answer에 더한 횟수를 넣음(루프의 i) # answer만큼 루프돌면서 현재값>다음값이 될 때 현재값을 result에 넣음 for i in range(len(progresses.. 2022. 8. 8.
[파이썬/Python] 백준 9012번: 괄호 https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 백준 9012번 괄호 문제를 풀었다. 문자열 문제이다. 코드 t=int(input()) for _ in range(t): vps=input() for i in range(len(vps)//2+1): vps=vps.replace('()','') if len(vps)==0: print('YES') else: print('NO') 코드 설명 입력은 T개의 테스트 데이터로 .. 2022. 7. 21.
프로그래머스-3진법 뒤집기 3진법 뒤집기 https://programmers.co.kr/learn/courses/30/lessons/68935 코딩테스트 연습 - 3진법 뒤집기 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 n은 1 이상 100,000,000 이하인 자연수 programmers.co.kr def solution(n): answer='' while n>0: n,mod=divmod(n,3) answer+=str(mod) return int(answer,3) divmod 함수를 이용하면 몫과 나머지를 구할 수 있다. 3진법은 divmod를 이용해서 루프돌면서 몫을 3으로 계속 나눈 나머지를 .. 2022. 5. 31.