2025/05 16

[Silver I] 14940 - 쉬운 최단거리

문제지도가 주어지면 모든 지점에 대해서 목표지점까지의 거리를 구하여라.문제를 쉽게 만들기 위해 오직 가로와 세로로만 움직일 수 있다고 하자.입력지도의 크기 n과 m이 주어진다. n은 세로의 크기, m은 가로의 크기다.(2 ≤ n ≤ 1000, 2 ≤ m ≤ 1000)다음 n개의 줄에 m개의 숫자가 주어진다. 0은 갈 수 없는 땅이고 1은 갈 수 있는 땅, 2는 목표지점이다. 입력에서 2는 단 한개이다.출력각 지점에서 목표지점까지의 거리를 출력한다. 원래 갈 수 없는 땅인 위치는 0을 출력하고, 원래 갈 수 있는 땅인 부분 중에서 도달할 수 없는 위치는 -1을 출력한다.예제 입력 1 복사15 152 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 ..

📚 Study/Baekjoon 2025.05.18

[Gold V] 1759 - 암호만들기

문제바로 어제 최백준 조교가 방 열쇠를 주머니에 넣은 채 깜빡하고 서울로 가 버리는 황당한 상황에 직면한 조교들은, 702호에 새로운 보안 시스템을 설치하기로 하였다. 이 보안 시스템은 열쇠가 아닌 암호로 동작하게 되어 있는 시스템이다.암호는 서로 다른 L개의 알파벳 소문자들로 구성되며 최소 한 개의 모음(a, e, i, o, u)과 최소 두 개의 자음으로 구성되어 있다고 알려져 있다. 또한 정렬된 문자열을 선호하는 조교들의 성향으로 미루어 보아 암호를 이루는 알파벳이 암호에서 증가하는 순서로 배열되었을 것이라고 추측된다. 즉, abc는 가능성이 있는 암호이지만 bac는 그렇지 않다.새 보안 시스템에서 조교들이 암호로 사용했을 법한 문자의 종류는 C가지가 있다고 한다. 이 알파벳을 입수한 민식, 영식 형..

📚 Study/Baekjoon 2025.05.17

헷갈리는 python 문법 -- input()

1. 숫자 여러 개 입력 받기 10 20 30 40nums = list(map(int, input().split()))print(nums)[10, 20, 30, 40] input() → '10 20 30 40' (문자열)split() → ['10', '20', '30', '40'] (문자열 리스트)map(int, ...) → [10, 20, 30, 40] (정수 리스트)list()는 map()이 반환하는 이터레이터를 리스트로 바꿔줌 2. 공백 없는 숫자 여러 개 입력 받기 101111nums = list(map(int, input().strip()))print(nums)[1, 0, 1, 1, 1, 1] 3. 문자 여러 개 입력받기a b c dchars = input().split()print(chars)..

📚 Study/Baekjoon 2025.05.17

[Gold V] 5430 - AC

문제선영이는 주말에 할 일이 없어서 새로운 언어 AC를 만들었다. AC는 정수 배열에 연산을 하기 위해 만든 언어이다. 이 언어에는 두 가지 함수 R(뒤집기)과 D(버리기)가 있다.함수 R은 배열에 있는 수의 순서를 뒤집는 함수이고, D는 첫 번째 수를 버리는 함수이다. 배열이 비어있는데 D를 사용한 경우에는 에러가 발생한다.함수는 조합해서 한 번에 사용할 수 있다. 예를 들어, "AB"는 A를 수행한 다음에 바로 이어서 B를 수행하는 함수이다. 예를 들어, "RDD"는 배열을 뒤집은 다음 처음 두 수를 버리는 함수이다.배열의 초기값과 수행할 함수가 주어졌을 때, 최종 결과를 구하는 프로그램을 작성하시오.입력첫째 줄에 테스트 케이스의 개수 T가 주어진다. T는 최대 100이다.각 테스트 케이스의 첫째 줄..

📚 Study/Baekjoon 2025.05.15

[Gold V] 16719 - ZOAC

문제2018년 12월, 처음 시작하게 된 ZOAC의 오프닝을 맡은 성우는 누구보다 화려하게 ZOAC를 알리려 한다.앞 글자부터 하나씩 보여주는 방식은 너무 식상하다고 생각한 성우는 문자열을 보여주는 새로운 규칙을 고안해냈다!규칙은 이러하다. 아직 보여주지 않은 문자 중 추가했을 때의 문자열이 사전 순으로 가장 앞에 오도록 하는 문자를 보여주는 것이다.예를 들어 ZOAC를 보여주고 싶다면, A → AC → OAC → ZOAC 순으로 보여주면 된다.바쁜 성우를 위하여 이 규칙대로 출력해주는 프로그램을 작성하시오.입력첫 번째 줄에 알파벳 대문자로 구성된 문자열이 주어진다. 문자열의 길이는 최대 100자이다.출력규칙에 맞게 순서대로 문자열을 출력한다.예제 입력 1 복사ZOAC예제 출력 1 복사AACOACZOAC..

📚 Study/Baekjoon 2025.05.12

[Silver I] 1495 - 기타리스트

문제Day Of Mourning의 기타리스트 강토는 다가오는 공연에서 연주할 N개의 곡을 연주하고 있다. 지금까지 공연과는 다른 공연을 보여주기 위해서 이번 공연에서는 매번 곡이 시작하기 전에 볼륨을 바꾸고 연주하려고 한다.먼저, 공연이 시작하기 전에 각각의 곡이 시작하기 전에 바꿀 수 있는 볼륨의 리스트를 만들었다. 이 리스트를 V라고 했을 때, V[i]는 i번째 곡을 연주하기 전에 바꿀 수 있는 볼륨을 의미한다. 항상 리스트에 적힌 차이로만 볼륨을 바꿀 수 있다. 즉, 현재 볼륨이 P이고 지금 i번째 곡을 연주하기 전이라면, i번 곡은 P+V[i]나 P-V[i] 로 연주해야 한다. 하지만, 0보다 작은 값으로 볼륨을 바꾸거나, M보다 큰 값으로 볼륨을 바꿀 수 없다.곡의 개수 N과 시작 볼륨 S, 그..

📚 Study/Baekjoon 2025.05.11

Window에서 PPOCRLabel 실행하는 방법

Installation and Run# 1. 가상환경 생성python -m venv ppocr_env # 2. 가상환경 활성화 및 환경 설치 (Windows)ppocr_env\Scripts\activatepython -m pip install --upgrade pippython -m pip install paddlepaddle python -m pip install PPOCRLabel# 3. PPOCRLabel 코드 다운로드git clone https://github.com/PaddlePaddle/PPOCRLabel.gitcd PPOCRLabel# 4. 실행python PPOCRLabel.pyRun RecognitionPPOCRLabel의 AutoRecognition 사용 방법은 다음과 같다.우상단 Fi..

📚 Study/AI 2025.05.11

[Gold IV] 32187 - 급식 배식

문제 1$1$부터 N$N$까지의 번호가 붙어있는 N$N$개의 배식대가 있다. i$i$번 배식대에서는 i$i$번 음식을 배식받을 수 있다. M$M$명의 학생들이 음식을 받기 위해 줄을 섰다.각 학생은 특정 음식을 배식받을 수 있고, 배식받은 음식에 해당하는 만큼 행복도가 상승한다. 구체적인 규칙은 다음과 같다. j$j$번 학생은 배식받을 수 있는 음식의 번호 pj,1,pj,2,⋯,pj,lj$p_{j,1},\,p_{j,2},\,\cdots,\,p_{j,l_j}$가 정해져 있다. 각 학생은 같은 음식을 최대 한 번만 배식받을 수 있다. j$j$번 학생이 pj,k$p_{j,k}$번 음식을 배식받을 경우 학생의 행복도가 vj,k$v_{j,k}$만큼 상승한다. j$j$번 학생이 배식받은 음식은 j+1$j+1$번 학..

📚 Study/Baekjoon 2025.05.10

[Gold V] 1931 - 회의실 배정

문제한 개의 회의실이 있는데 이를 사용하고자 하는 N개의 회의에 대하여 회의실 사용표를 만들려고 한다. 각 회의 I에 대해 시작시간과 끝나는 시간이 주어져 있고, 각 회의가 겹치지 않게 하면서 회의실을 사용할 수 있는 회의의 최대 개수를 찾아보자. 단, 회의는 한번 시작하면 중간에 중단될 수 없으며 한 회의가 끝나는 것과 동시에 다음 회의가 시작될 수 있다. 회의의 시작시간과 끝나는 시간이 같을 수도 있다. 이 경우에는 시작하자마자 끝나는 것으로 생각하면 된다.입력첫째 줄에 회의의 수 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N+1 줄까지 각 회의의 정보가 주어지는데 이것은 공백을 사이에 두고 회의의 시작시간과 끝나는 시간이 주어진다. 시작 시간과 끝나는 시간은 231-1보다 작거나 같..

📚 Study/Baekjoon 2025.05.10

[24'NeurlPs] Visual Fourier Prompt Tuning

1. Introduction 배경프롬프트 튜닝(Prompt Tuning)은 원래 자연어처리(NLP) 분야에서 대규모 파운데이션 모델을 효율적으로 적응시키기 위한 방법으로 도입되었으며, 이후 비전 분야로 확장되었다.현재는 이미지 분류, 객체 탐지, 분할 등 다양한 비전 태스크에 적용되어 전체 파라미터를 재학습하는 방식보다 훨씬 가볍고 효과적인 방법으로 자리잡고 있다.그러나 프롬프트 튜닝에는 여전히 중요한 과제가 존재한다.바로, 사전학습 데이터와 파인튜닝 데이터 간의 도메인 차이가 클수록 성능이 급격히 저하된다는 점이다.이 문제는 프롬프트 튜닝의 범용성을 제한하며,연구자들에게 “프롬프트 튜닝은 다양한 도메인 간 일반화가 가능한가?”라는 근본적인 질문을 던지게 만든다. 인간 시각 인지에서 영감을 얻다연구팀은 ..