PYTHON 9

[프로그래머스] 가장 큰 수 (Python)

문제 설명 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 수는 6210입니다. 0 또는 양의 정수가 담긴 배열 numbers가 매개변수로 주어질 때, 순서를 재배치하여 만들 수 있는 가장 큰 수를 문자열로 바꾸어 return 하도록 solution 함수를 작성해주세요. 제한 사항 numbers의 길이는 1 이상 100,000 이하입니다. numbers의 원소는 0 이상 1,000 이하입니다. 정답이 너무 클 수 있으니 문자열로 바꾸어 return 합니다. 입출력 예 numbers return [6, 10, ..

에러 | jinja2.exceptions.TemplateNotFound: 해결 방법

html 파일을 찾지 못하고 이런 에러가 발생할 때 원인은 [ flaskEx03.py ] from flask import Flask, render_template # [주의] 실행파일과 같은 층위에 template 폴더를 만들고 그 폴더에 html 파일을 배치해둔다! app = Flask(__name__) @app.route("/") def index(): return render_template('demo.html') if __name__ == '__main__': app.run() 폴더명이 잘 못 되었을 가능성이 있다. render_template()는 루트 경로에서 templates 라는 폴더안에서 view 파일을 찾는데, 폴더명을 templates 라고 지정하지 않았을 때 오류가 나기도 한다. 이..

Python 2023.10.26

[백준/Python] 1715번 카드 정렬하기

드디어 골드문제 도전! https://www.acmicpc.net/problem/1715 1715번: 카드 정렬하기 정렬된 두 묶음의 숫자 카드가 있다고 하자. 각 묶음의 카드의 수를 A, B라 하면 보통 두 묶음을 합쳐서 하나로 만드는 데에는 A+B 번의 비교를 해야 한다. 이를테면, 20장의 숫자 카드 묶음과 30장 www.acmicpc.net 풀이 from queue import PriorityQueue n = int(input()) card = PriorityQueue() lst = [] for _ in range(n): card.put(int(input())) for i in range(n-1): temp = card.get(card)+card.get(card) card.put(temp) lst..

알고리즘/백준 2023.09.20

[백준/Python] 1181번 단어 정렬

https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net [풀이] n = int(input()) word =[] for _ in range(n): word.append(input()) word = sorted(list(set(word)), key=lambda x: (len(x),x) ) print(*word, sep='\n') 람다식을 사용하니 간단하게 나타낼 수 있었다. (아직 람다식 사용에 익숙하지 않아서, 많이 연습해봐야 할듯...) 이..

알고리즘/백준 2023.08.21

[프로그래머스] 정수 제곱근 판별 (Python)

문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 제한 사항 n은 1이상, 50000000000000 이하인 양의 정수입니다. 입출력 예 n return 121 144 3 -1 입출력 예 설명 입출력 예#1 121은 양의 정수 11의 제곱이므로, (11+1)를 제곱한 144를 리턴합니다. 입출력 예#2 3은 양의 정수의 제곱이 아니므로, -1을 리턴합니다. 풀이 import math def solution(n): if n%math.sqrt(n) ==0: #math.sqrt(n)는 n의 제곱근 반환 return pow(mat..

[프로그래머스] 양꼬치 (Python)

오늘 양꼬치를 먹어서 양꼬치 문제를 풀었다... 문제 설명 머쓱이네 양꼬치 가게는 10인분을 먹으면 음료수 하나를 서비스로 줍니다. 양꼬치는 1인분에 12,000원, 음료수는 2,000원입니다. 정수 n과 k가 매개변수로 주어졌을 때, 양꼬치 n인분과 음료수 k개를 먹었다면 총얼마를 지불해야 하는지 return 하도록 solution 함수를 완성해보세요. 제한사항 0 < n < 1,000 n / 10 ≤ k < 1,000 서비스로 받은 음료수는 모두 마십니다. 입출력 예 n k result 10 3 124,000 64 6 768,000 입출력 예 설명 입출력 예 #1 10인분을 시켜 서비스로 음료수를 하나 받아 총 10 * 12000 + 3 * 2000 - 1 * 2000 = 124,000원입니다. 입출..