본문 바로가기

알고리즘

(22)
프로그래머스/주식가격/py https://school.programmers.co.kr/learn/courses/30/lessons/42584 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 주식이 떨어 지기 전까지 기간이 몇초인지 리턴하는 문제이다. 입력 prices의 각 가격은 1 이상 10,000 이하인 자연수입니다. prices의 길이는 2 이상 100,000 이하입니다. 출력 주식이 떨어 지기 전까지 기간이 몇초인지 리턴하라. 풀이 모든 가격을 돌때마다 시간을 0으로 푸시 해준다. 그리고 다음 가격과 비교하여 가장 높은 가격은 바로 이전 가격부터 아래로 하나하나 비교한다..
프로그래머스/124 나라의 숫자/py https://school.programmers.co.kr/learn/courses/30/lessons/12899 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 10진법을 124 숫자 의 진법으로 바꿔라. 입력 n은 500,000,000이하의 자연수 입니다. 출력 124 진법으로 바꿔라. def solution(n): answer = '' lis = "124" while n > 0 : # 3진법으로 바꿔주는 반복문 if n % 3 == 0: # 3으로 나눠 떨어질때 n -= 1 # 0 이 없므르로 실제로 나머지는 0 이아니다. rem = n % 3 ..
프로그래머스/오픈채팅방/py https://school.programmers.co.kr/learn/courses/30/lessons/42888 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 채팅 방에서 들어오고 나갈때 닉네임이 마지막으로 바뀐경우에 남는 닉네임을 결과로 만들어라. 입력 문자열 이 여러개인 리스트 record 가 주어진다. 문자열은 "(enter,leave,change) uid nickname" 순으로 들어있다. 출력 채팅방에 사람들이 들어오고 나갈때 남는 이름과 메세지를 적고 마지막으로 바뀐 닉네임으로 해당 메세지를 변경하여라. def solution(recor..
프로그래머스/위장/py https://school.programmers.co.kr/learn/courses/30/lessons/42578 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 스파이가 가진 의상들의 조합의 개수를 구하여라. 입력 clothes의 각 행은 [의상의 이름, 의상의 종류]로 이루어져 있습니다. 스파이가 가진 의상의 수는 1개 이상 30개 이하입니다. 같은 이름을 가진 의상은 존재하지 않습니다. clothes의 모든 원소는 문자열로 이루어져 있습니다. 모든 문자열의 길이는 1 이상 20 이하인 자연수이고 알파벳 소문자 또는 '_' 로만 이루어져 있습니다...
프로그래머스/전화번호 목록/py https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하라. 입력 phone_book의 길이는 1 이상 1,000,000 이하입니다. 각 전화번호의 길이는 1 이상 20 이하입니다. 같은 전화번호가 중복해서 들어있지 않습니다. 출력 true or false 풀이 그냥 기본 으로 탐색하게 된다면 phone_book 을 두번돌리게 된다. 따라서 1000000000000이라는 for문을 돌리게 되는데..
백준/가장 가까운 세 사람의 심리적 거리/py https://www.acmicpc.net/problem/20529 20529번: 가장 가까운 세 사람의 심리적 거리 각 테스트 케이스에 대한 답을 정수 형태로 한 줄에 하나씩 출력한다. www.acmicpc.net 문제 mbti 의 거리를 구하여라 입력 첫 줄에는 테스트 케이스의 수를 나타내는 정수 TT가 주어진다. 각 테스트 케이스의 첫 줄에는 학생의 수를 나타내는 하나의 정수 NN이 주어지며, 두 번째 줄에는 각 학생의 MBTI 성격 유형을 나타내는 문자열들이 사이에 공백을 두고 주어진다. 출력 답을 한줄에 하나씩 출력 import sys t = int(sys.stdin.readline()) def getDis(mbti1,mbti2): # mbti 거리 계산 함수 dis = 0 for i in ra..
프로그래머스/문자열 압축/py https://school.programmers.co.kr/learn/courses/30/lessons/60057 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 알파벳으로 된 문자열중 연속된 중복이 일어나는 문자들을 숫자로 묶어 문자열 길이를 최소로 만드는 문자열을 리턴하는 문제이다. 이때 단위만큼씩 중복검사를 한다. 입력 문자열 s (1
프로그래머스/주차 요금 계산/py https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 주차 요금표가 주어지고 입출차 기록 (in,out)이 주어졌을때 주차요금을 계산하는 문제이다. 입력 fees, records 리스트가있다.fees 의 길이 4 1 ≤ fees[0] ≤ 1,439 0 ≤ fees[1] ≤ 100,000 1 ≤ fees[2] ≤ 1,439 1 ≤ fees[3] ≤ 10,000 records 의 길이
프로그래머스/올바른 괄호/py https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 괄호가 '(' 문자로 열려있으면 반드시 ')' 로 닫혀있는 짝이있는 문자열 일때 올바른 문자열인지 아닌지 구분하는 함수를 완성하여라 입력 문자열 s 의 길이 (1
프로그래머스/신규 아이디 추천/py https://school.programmers.co.kr/learn/courses/30/lessons/72410 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 아이디를 규칙에 알맞게 치환하라 입력 문자열 출력 문자열 풀이 1단계 new_id의 모든 대문자를 대응되는 소문자로 치환합니다. 2단계 new_id에서 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.)를 제외한 모든 문자를 제거합니다. 3단계 new_id에서 마침표(.)가 2번 이상 연속된 부분을 하나의 마침표(.)로 치환합니다. 4단계 new_id에서 마침표(.)가 처음이나 끝에..