본문 바로가기

전체 글

(205)
백준 1330 두 수 비교하기 자바 풀이 난이도 : 브론즈5 풀이일 : 04123 https://www.acmicpc.net/problem/1330 1330번: 두 수 비교하기 두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오. www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); if(a > b) System.out.println(">"); else if(a < b) System.out.pr..
백준 16236 아기상어 파이썬 풀이 난이도 : 골드3 풀이일 : 04274 https://www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 문제 요약 1. 상어는 본인 크기보다 작은 물고기만 먹음 2. 상어 크기와 같은 수의 물고기 먹으면 성장 3. 상어와 크기 같은 물고기 칸 통과 가능, 섭취 불가능 4. 먹을 수 있는 물고기가 많다면 거리가 가까운 물고기 섭취 거리가 가까운 물고기가 많다면 위, 왼쪽 우선순위 5. 아기상어 최초 크기 2,..
백준 10430 나머지 자바 풀이 난이도 : 브론즈5 풀이일 : 04112 https://www.acmicpc.net/problem/10430 10430번: 나머지 첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000) www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); System.out.println((a+b)%c); System.out..
백준 18108 1998년생인 내가 태국에서는 2541년생?! 자바 풀이 난이도 : 브론즈5 풀이일 : 04112 https://www.acmicpc.net/problem/18108 18108번: 1998년생인 내가 태국에서는 2541년생?! ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다. 불교 국가인 태국 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc...
백준 17298 오큰수 파이썬 풀이 난이도 : 골드4 풀이일 : 03131 https://www.acmicpc.net/problem/17298 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 1차 시도 오답 import sys n = int(sys.stdin.readline().strip()) arr = list(map(int, sys.stdin.readline().split())) stack = [arr[-1]] num = [-1] * n for i in range(n-2, -1, -1): while stac..
백준 10926 ??! 자바 풀이 난이도 : 브론즈5 풀이일 : 04112 https://www.acmicpc.net/problem/10926 10926번: ??!준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐풀이 코드import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str; str = sc.nextLine(); System.out.print..
백준 14719 빗물 파이썬 풀이 난이도 : 골드5 풀이일 : 04241 https://www.acmicpc.net/problem/14719 14719번: 빗물첫 번째 줄에는 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500) 두 번째 줄에는 블록이 쌓인 높이를 의미하는 0이상 H이하의 정수가 2차원 세계의 맨 왼쪽 위치www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐풀이 과정 인덱스 활용을 위해 enumerate 사용 배열 안에서 max 탐색 max 좌, 우 방향 두 번째 max 탐색 빗물 += 두 번째 max - 각 인덱스에 있는 값들의 높이 인덱스 범위 : 두 번째 max ~ max (좌, 우 반대) 좌, 우 모두 방향은 유지 탐색 풀이 코드# 1. 인덱스 활..
백준 10869 사칙연산 자바 풀이 난이도 : 브론즈5 풀이일 : 04112 https://www.acmicpc.net/problem/10869 10869번: 사칙연산두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐풀이 코드import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); System.out.println(a+b); System.out.pri..
백준 1697 숨바꼭질 파이썬 풀이, 반례 난이도 : 실버1 풀이일 : 04237 https://www.acmicpc.net/problem/1697 1697번: 숨바꼭질수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐풀이 코드# 모든 좌표에 visited 배열 생성 # 순간이동 우선으로 BFS 탐색 # 시간초과 방지 queue 포인터 사용 # 만약, N==K라면 함수 실행 없이 0 출력 import sys def BFS(n): visited[n] = 1 queue = [n] p = 0 while p < ..
백준 1008 A/B 자바 풀이 난이도 : 브론즈5 풀이일 : 04112 https://www.acmicpc.net/problem/1008 1008번: A/B두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐풀이 코드import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); double a = sc.nextInt(); double b = sc.nextInt(); System.out.println(a/b); } }느낀점 오늘은 나눗셈 기록 처음에는 float 썼었는데, 자릿수를 더 ..
백준 2096 내려가기 파이썬 풀이, 메모리 초과 해결 난이도 : 골드5 풀이일 : 04226 https://www.acmicpc.net/problem/2096 2096번: 내려가기첫째 줄에 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 숫자가 세 개씩 주어진다. 숫자는 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 중의 하나가 된다.www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐1차 시도 오답 -> 3% 메모리 초과# i == 1, 모든 j 넣은 내려오기 함수 실행 # visited 최소값, 최대값 함수 두 번 실행 # DFS 방향으로 세 방향 탐색 # di = [1, 1, 1] # dj = [-1, 0, 1] # i == n-1, 모든 j visited 순회하며 maxi, mini 판별 출력 import ..
백준 10998 A×B 자바 풀이 난이도 : 브론즈5 풀이일 : 04112 https://www.acmicpc.net/problem/10998 10998번: A×B두 정수 A와 B를 입력받은 다음, A×B를 출력하는 프로그램을 작성하시오.www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐풀이 코드import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); System.out.println(a*b); } }느낀점 문제 번호가 훅 뛰어서 1002가 아닌게 좀 별로 아주 기초적인 자바 ..
백준 5430 AC 파이썬 풀이, 반례 난이도 : 골드5 풀이일 : 04215 https://www.acmicpc.net/problem/5430 5430번: AC각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다.www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐1차 시도 오답import sys T = int(sys.stdin.readline().strip()) for tc in range(1, T+1): p = list(map(str, sys.stdin.readline().strip())) flag = 1 F = 0 B = 0 for i in range(len(p)): if p[i] == 'D': if flag: F += 1 els..
백준 1001 A-B 자바 풀이 난이도 : 브론즈5 풀이일 : 04112 https://www.acmicpc.net/problem/1001 1001번: A-B두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오.www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐풀이 코드import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int a = scan.nextInt(); int b = scan.nextInt(); System.out.println(a-b); } }느낀점 더하기에 이어 빼기 연습 간단한 문제지만 자바는 기본 문제 연습..
백준 14503 로봇청소기 파이썬 풀이, 반례 난이도 : 골드5 풀이일 : 04204 https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐1차 시도 오답 -> 1% 틀렸습니다.import sys def clean(arr, i, j, h): sell = 0 while True: if arr[i][j] == 0: arr[i][j] = -1 sell += 1 next_sell = 0 for k in range(..
백준 1000 A+B 자바 풀이 난이도 : 브론즈5 풀이일 : 04112 https://www.acmicpc.net/problem/1000 1000번: A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int a = scan.nextInt(); int b = scan.nextInt(); System.out.println(a+b); } } 느낀점 숫자 두 개 입력 받는 법을 몰라서 스캐너 두개 썼더..
백준 13549 숨바꼭질3 파이썬 풀이, 반례 난이도 : 골드5 풀이일 : 04193 https://www.acmicpc.net/problem/1354913549번: 숨바꼭질 3수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐1차 시도 오답 -> 8% 틀렸습니다import sys N, K = map(int, sys.stdin.readline().split()) def find(num): visited = [0] * 100000 queue = [num] visited[num] = 1 p = 0 while p ..
백준 2557 Hello World 자바 풀이 난이도 : 브론즈5 풀이일 : 04112 https://www.acmicpc.net/problem/2557 2557번: Hello WorldHello World!를 출력하시오.www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐풀이 코드public class Main { public static void main(String[] args) { System.out.println("Hello World!"); } }느낌점 자바는 아주 쉬운 문제여도 좀 답안을 쓰기가 아주 싫게 생긴 것 같다. 아주 기초 문제를 풀고 있지만 이러다보면 파이썬으로 푸는 문제들도 풀 수 있겠지 매일 아침마다 자바 기본 문제들도 하나씩 업로드해야겠다.
백준 11004 K번째 수 파이썬 풀이 난이도 : 실버5 풀이일 : 04171 https://www.acmicpc.net/problem/11004 11004번: K번째 수수 N개 A1, A2, ..., AN이 주어진다. A를 오름차순 정렬했을 때, 앞에서부터 K번째 있는 수를 구하는 프로그램을 작성하시오.www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐풀이 코드import sys n, k = map(int, sys.stdin.readline().split()) num = list(map(int, sys.stdin.readline().split())) num.sort() print(num[k-1])sort 를 사용해 정렬 한 후 주어진 K번째 수를 출력하기 위해 인덱스 (K-1) 출력메모 - sort() : 기존의 리스트..
백준 7569 토마토 파이썬 풀이 난이도 : 골드5 풀이일 : 04171 https://www.acmicpc.net/problem/7569 7569번: 토마토첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐풀이 과정 - 익은 토마토는 동, 서, 남, 북, 상, 하 6방향 토마토에 영향 - 3차원 형식으로 리스트 구성 -> 6방향 탐색 진행 - 포인터 사용으로 pop 연산 시간초과 방지 - 익은 토마토 리스트를 구성해 토마토 숙성 함수에 넘겨주기 - 토마토가 익는 날짜는 이전 숫자 +1 기록 -> ..