본문 바로가기

Python24

[백준] [Python] 15552번: 빠른 A+B [ 문제 ] 본격적으로 for문 문제를 풀기 전에 주의해야 할 점이 있다. 입출력 방식이 느리면 여러 줄을 입력받거나 출력할 때 시간초과가 날 수 있다는 점이다. C++을 사용하고 있고 cin/cout을 사용하고자 한다면, cin.tie(NULL)과 sync_with_stdio(false)를 둘 다 적용해 주고, endl 대신 개행문자(\n)를 쓰자. 단, 이렇게 하면 더 이상 scanf/printf/puts/getchar/putchar 등 C의 입출력 방식을 사용하면 안 된다. Java를 사용하고 있다면, Scanner와 System.out.println 대신 BufferedReader와 BufferedWriter를 사용할 수 있다. BufferedWriter.flush는 맨 마지막에 한 번만 하면 된.. 2022. 10. 23.
[백준] [Python] 2525번: 오븐 시계 [ 문제 ] KOI 전자에서는 건강에 좋고 맛있는 훈제오리구이 요리를 간편하게 만드는 인공지능 오븐을 개발하려고 한다. 인공지능 오븐을 사용하는 방법은 적당한 양의 오리 훈제 재료를 인공지능 오븐에 넣으면 된다. 그러면 인공지능 오븐은 오븐구이가 끝나는 시간을 분 단위로 자동적으로 계산한다. 또한, KOI 전자의 인공지능 오븐 앞면에는 사용자에게 훈제오리구이 요리가 끝나는 시각을 알려 주는 디지털 시계가 있다. 훈제오리구이를 시작하는 시각과 오븐구이를 하는 데 필요한 시간이 분단위로 주어졌을 때, 오븐구이가 끝나는 시각을 계산하는 프로그램을 작성하시오. [ 조건 ] 첫째 줄에는 현재 시각이 나온다. 현재 시각은 시 A (0 ≤ A ≤ 23) 와 분 B (0 ≤ B ≤ 59)가 정수로 빈칸을 사이에 두고 .. 2022. 10. 14.
구글 코랩(Google Colab) 시작하기 프로그래밍을 공부하는 방법은 여러 가지가 있을 것이다. 나의 경우 현재 파이썬을 공부하고 있다. 하지만 파이썬을 공부할 때도 파이썬 자체의 내장 IDE인 IDLE, 파이참(PyCharm), 비주얼스튜디오(Visual Studio Code), 주피터 노트북(Jupyter Notebook) 등 수많은 IDE 중 원하는 것을 선택하여 사용할 수 있을 것이다. 이번 포스터에서는 그중에서 내가 자주 사용하는 코랩에 대해서 이야기해보려 한다. 구글 코랩이란? 구글 코랩(Google Colaboratory)은 구글에서 제공하는 서비스 중 하나로, 클라우드 기반의 주피터 노트북 IDE이다. 다른 IDE에 비해 코랩은 클라우드를 기반으로 하기 때문에 별도의 프로그램 설치나 세팅 없이 언제 어디서나 구글 아이디만 있으면 .. 2022. 10. 12.
[백준] [Python] 2884번: 알람 시계 [ 문제 ] 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, 조금만 더 자려는 마음은 그 어떤 것도 없앨 수가 없었다. 이런 상근이를 불쌍하게 보던, 창영이는 자신이 사용하는 방법을 추천해 주었다. 바로 "45분 일찍 알람 설정하기"이다. 이 방법은 단순하다. 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다. 어차피 알람 소리를 들으면, 알람을 끄고 조금 더 잘 것이기 때문이다. 이 방법을 사용하면, 매일 아침 더 잤다는 기분을 느낄 수 있고, 학교도 지각하지 않게 된다. 현재 상근이가 설정한 알람 시각이 주어졌을 때, 창영이의 방법을 사용한다면, 이를.. 2022. 10. 10.
[백준] [Python] 3003번: 킹, 퀸, 룩, 비숍, 나이트, 폰 [ 문제 ] 동혁이는 오래된 창고를 뒤지다가 낡은 체스판과 피스를 발견했다. 체스판의 먼지를 털어내고 걸레로 닦으니 그럭저럭 쓸만한 체스판이 되었다. 하지만, 검정색 피스는 모두 있었으나, 흰색 피스는 개수가 올바르지 않았다. 체스는 총 16개의 피스를 사용하며, 킹 1개, 퀸 1개, 룩 2개, 비숍 2개, 나이트 2개, 폰 8개로 구성되어 있다. 동혁이가 발견한 흰색 피스의 개수가 주어졌을 때, 몇 개를 더하거나 빼야 올바른 세트가 되는지 구하는 프로그램을 작성하시오. [ 조건 ] 첫째 줄에 동혁이가 찾은 흰색 킹, 퀸, 룩, 비숍, 나이트, 폰의 개수가 주어진다. 이 값은 0보다 크거나 같고 10보다 작거나 같은 정수이다. 첫째 줄에 입력에서 주어진 순서대로 몇 개의 피스를 더하거나 빼야 되는지를 출.. 2022. 10. 6.
[백준] [Python] 1000번: A + B [ 문제 ] 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. [ 조건 ] 첫째 줄에 A와 B가 주어진다. (0 < A, B < 10) 첫째 줄에 A+B를 출력한다. [ 풀이 ] # My solution A, B = map(int, input().split())#1 print(A+B)#2 실행결과 1 2# 입력값 3# 출력값 #1 단순히 A와 B를 각각 입력을 받는 경우 A = int(input()) B = int(input()) 위와 같은 형태로 풀이를 하면 되지만, 문제에서는 A와 B를 한 번에 입력받을 것을 요구한다. 따라서 map()함수를 이용하여 입력받은 값들을 한 번에 int의 형식으로 바꾸는 방법을 사용한다. 더보기 map()함수에 대해서 알아보자. map()함수는.. 2022. 10. 2.