파이썬 11

[Python] boj 18258 "큐2"

큐 2 성공 시간 제한메모리 제한제출정답맞은 사람정답 비율 1 초 (하단 참고) 512 MB 30125 9138 7367 31.062% 문제 정수를 저장하는 큐를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여섯 가지이다. push X: 정수 X를 큐에 넣는 연산이다. pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 큐에 들어있는 정수의 개수를 출력한다. empty: 큐가 비어있으면 1, 아니면 0을 출력한다. front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 ..

알고리즘 문제 2021.10.26

[Python] boj 10773 "제로"

제로 성공출처다국어 한국어 시간 제한메모리 제한제출정답맞은 사람정답 비율 1 초 256 MB 31691 21050 17565 67.459% 문제 나코더 기장 재민이는 동아리 회식을 준비하기 위해서 장부를 관리하는 중이다. 재현이는 재민이를 도와서 돈을 관리하는 중인데, 애석하게도 항상 정신없는 재현이는 돈을 실수로 잘못 부르는 사고를 치기 일쑤였다. 재현이는 잘못된 수를 부를 때마다 0을 외쳐서, 가장 최근에 재민이가 쓴 수를 지우게 시킨다. 재민이는 이렇게 모든 수를 받아 적은 후 그 수의 합을 알고 싶어 한다. 재민이를 도와주자! 입력 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정..

알고리즘 문제 2021.10.26

[Python] 파이썬 백준 boj 2609 " 최대공약수와 최소공배수"

최대공약수와 최소공배수 성공출처 시간 제한메모리 제한제출정답맞은 사람정답 비율 1 초 128 MB 47852 28357 23053 61.089% 문제 두 개의 자연수를 입력받아 최대 공약수와 최소 공배수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에는 두 개의 자연수가 주어진다. 이 둘은 10,000이하의 자연수이며 사이에 한 칸의 공백이 주어진다. 출력 첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다. 예제 입력 1 복사 24 18 예제 출력 1 복사 6 72 유클리드 호제법 number = list(map(int, input().split())) a = number[0] b = number[1] gcd=0 lcm=0 def gcd_g..

알고리즘 문제 2021.10.22

[Python] 백준 boj 2941 "크로아티아 알파벳"

크로아티아 알파벳 성공출처다국어 한국어 시간 제한메모리 제한제출정답맞은 사람정답 비율 1 초 128 MB 75317 33206 28497 45.114% 문제 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= 예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어져 있다. 단어가 주어졌을 때, 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다. dž는 무조건 하나의 알파벳으로 쓰이고, d와 ž가 분리된 것으로 보지 않는다. lj와 nj도 마찬가지이다. 위 목록에 없는 알파벳은 한 글자씩..

알고리즘 문제 2021.10.21

[Python] Dynamic Programing(Dp 알고리즘) - 피보나치 수열

피보나치 수열이란 수학에서, 피보나치 수(영어: Fibonacci numbers)는 첫째 및 둘째 항이 1이며 그 뒤의 모든 항은 바로 앞 두 항의 합인 수열이다. 처음 여섯 항은 각각 1, 1, 2, 3, 5, 8이다. [위키백과] 이다!. 보통 피보나치 수열을 계산할 때 재귀로 많이 풀었는데, 재귀로 풀면 시간이 점점 증가하기 때문에 50이상은 구하기 힘들다. 이럴 때 쓸 수 있는게 동적 계획법, 즉 다이나믹 프로그래밍 이다. 동적계획법 (DP) 동적 계획법(Dynamic Programming)이란 복잡한 문제를 간단한 여러 개의 문제로 나누어 푸는 방법을 말한다. 이것은 부분 문제 반복과 최적 부분 구조를 가지고 있는 알고리즘을 일반적인 방법에 비해 더욱 적은 시간 내에 풀 때 사용한다. [위키백과..

Python 2021.10.21

[파이썬] boj 2884 "알람 시계" - Python

알람 시계 성공출처다국어 한국어 시간 제한메모리 제한제출정답맞은 사람정답 비율 1 초 128 MB 186398 69663 60075 38.689% 문제 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, 조금만 더 자려는 마음은 그 어떤 것도 없앨 수가 없었다. 이런 상근이를 불쌍하게 보던, 창영이는 자신이 사용하는 방법을 추천해 주었다. 바로 "45분 일찍 알람 설정하기"이다. 이 방법은 단순하다. 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다. 어차피 알람 소리를 들으면, 알람을 끄고 조금 더 잘 것이기 때문이다. 이 방법을 사용하면, 매일 아침 더 ..

알고리즘 문제 2021.10.20

[파이썬] boj 1157 "단어 공부" - Python

단어 공부 성공 시간 제한메모리 제한제출정답맞은 사람정답 비율 2 초 128 MB 122587 48176 38486 39.131% 문제 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 입력 첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다. 출력 첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다. 예제 입력 1 복사 Mississipi 예제 출력 1 복사 ? 예제 입력 2 복사 zZa 예제 출력 2 복사 Z 예제 입력 3 복사 z 예제 출력 ..

알고리즘 문제 2021.10.20

[파이썬] boj 10869 "사칙연산" - Python

사칙연산 성공 시간 제한메모리 제한제출정답맞은 사람정답 비율 1 초 256 MB 204803 101835 89467 50.652% 문제 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. 입력 두 자연수 A와 B가 주어진다. (1 ≤ A, B ≤ 10,000) 출력 첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A*B, 넷째 줄에 A/B, 다섯째 줄에 A%B를 출력한다. 예제 입력 1 복사 7 3 예제 출력 1 복사 10 4 21 2 1 1번) num = input().split(' ') a = int(num[0]) b = int(num[1]) print(a+b) print(a-b) print(a*b) print(int(a..

알고리즘 문제 2021.10.20

[Python] 파이썬 단일, 복수 입력값 받기

파이썬 백준 문제를 풀기위해 사용자에게 입력값을 받아야했다. 파이썬으로 입력값을 받는 방법은 단순하다, 1. 단순 입력값 받기 text1 = input() input() 함수를 이용해 사용자에게 입력값을 받을 수 있지만, 이러면 사용자에게 입력받은 모든 값을 문자열로 처리한다. 2. 숫자 입력받기 num = int(input('숫자를 입력해 주세요 : ')) 문자열로 입력받은 수를 정수형 타입으로 변환해서 전환해줍니다. 3. 여러개의 입력 값 받기 #split()은 문자열을 분리한다는 뜻 -> 매개변수로 분리할 기준값을 전달해 줄 수 있다. st1, st2 = input('문자열을 입력해주세요 : ').split() split()함수를 이용해 여러개의 값을 받을 수 있습니다. 하지만, 이러한 방법은 사용..

Python 2021.10.20

[Django] Python 지도라이브러리 Folium 과 leaflet 차이점(Folium VS Leaflet.js)

저번 게시물에서 leaflet 지도 라이브러리의 사용방법으로 간단하게 호출을 해보았는데, 또 다른 지도 라이브러리로 Folium 이라는 오픈소스가 있어서 Leaflet과의 차이점을 알아보았다. 1. Leaflet 리플렛은 공식문서의 소개 그대로 an open-source JavaScript library for mobile-friendly interactive maps 즉, 자바스크립트 라이브러리이다. 말 그대로 Javascript를 이용하여 가볍게 지도 객체를 호출하여 맵핑할 수 있는 웹 지도화 라이브러리이다. 그럼 Folium은 무엇일까? 2. Folium folium 공식문서를 보면 " Make beautiful maps with Leaflet.js & Python " 라고 나와있다. 한마디로, l..

반응형