Algorithm/etc111 [파이썬, 자바] 백준 2470 : 두 용액 (골드5) [파이썬, 자바] 백준 2470 : 두 용액 (골드5)https://www.acmicpc.net/problem/두 용액풀이방향성 생각투포인터 / 이분탐색인데 투포인터로 풀었다.투포인터도 시작점에서 같이 시작하냐, 양 끝에서 조이냐 선택을 해야한다.window 내에서 개수나 합 등을 계속 측정해야하면 시작점에서 같이 시작해서 조건을 만족하는 최대 window 등을 찾으면 left pointer를 이동시킨다.이 문제에서는 window의 길이와 관계 없이 양 끝 포인터의 합을 더해주면서 포인터를 조절해주면 된다. 파이썬N = int(input())arr = sorted(map(int,input().split()))l,r = 0,N-1min_sum = float('inf')answer = Nonewhile l .. 2025. 2. 7. [파이썬, 자바] 백준 5549 : 행성탐사 (골드5) [파이썬, 자바] 백준 5549 : 행성탐사 (골드5)https://www.acmicpc.net/problem/5549풀이방향성 생각H,W가 각각 1000인 배열을 2차원 누적합 배열 3개를 만들어서 풀이쿼리의 개수가 많기 떄문에 입출력 버퍼도 쓰기 파이썬import sysinput = lambda : sys.stdin.readline().rstrip()H,W = map(int,input().split())TC = int(input())arr = [list(input()) for _ in range(H)]arr_info = [[[0]*(W+1) for _ in range(H+1)] for _ in range(3)]cvt = {"J":0, "O":1, "I":2}for i in range(H): fo.. 2025. 2. 6. [파이썬, 자바] 백준 2167 : 2차원 배열의 합 (실버5) [파이썬, 자바] 백준 2167 : 2차원 배열의 합 (실버5)https://www.acmicpc.net/problem/2167풀이방향성 생각입력이 작아서 for문으로 돌려도 되지만, 누적합을 사용해서 효율적으로 구하기.누적합 배열을 만들 땐, 기존 배열보다 크기가 1씩 큰 배열을 만들어서 cumsum 배열과 인덱스가 일치하게 맞춰주자. 파이썬import sysinput = lambda: sys.stdin.readline().rstrip()H,W = map(int,input().split())arr = [[0]*(W+1) for _ in range(H+1)]for i in range(1,H+1): arr[i][1:] = list(map(int, input().split()))# x,y 인덱스가 작은.. 2025. 2. 5. [파이썬] 백준 5800 : 성적 통계 (실버5) [파이썬] 백준 5800 : 성적 통계 (실버5)https://www.acmicpc.net/problem/5800풀이방향성 생각입력 후, 정렬 + 순회전체코드파이썬for i in range(int(input())): n,*arr = list(map(int,input().split())) arr.sort() print(f"Class {i+1}") print(f"Max {arr[-1]}, Min {arr[0]}, Largest gap {max(arr[j+1]-arr[j] for j in range(n-1))}")앞에 특정 원소 몇개를 빼고, *을 통해서 바로 불러올 수 있다. 자바import java.io.*;import java.util.*;public class Main { p.. 2025. 1. 20. 이전 1 ··· 4 5 6 7 8 9 10 ··· 28 다음