https://www.acmicpc.net/problem/7795import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); int T = Integer.parseInt(br.readLine()); for (int t = 0; t A와 B를..
분류 전체보기
https://www.acmicpc.net/problem/5218문제풀이t = int(input())for i in range(t): a, b = input().split() ans = [] for j in range(len(a)): x = ord(a[j]) - 64 y = ord(b[j]) - 64 if y >= x: z = y - x else: z = y + 26 - x ans.append(z) print('Distances: {}'.format(' '.join(map(str, ans))))입력으로 테스트 케이스의 수를 입력 받는다. 두 개의 문자열을 입력 받는다.대응되는 문자들의 거리를 계산해서 리스트에 저장한다.
풀이#include #include using namespace std;int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N, S; cin >> N >> S; int A[N]; for( int i = 0; i > A[i]; // 수열 입력 int sum; int lft = 0, rgt = 0; sum = A[lft]; int result = 100000001; while(rgt S ) { result = min(result, (rgt - lft + 1)); sum -= A[lft]; ..
문제 풀이1. 나열한 내용을 내림차순으로 정렬한다.2. 앞에서부터 n개의 말은 참이다.라는 주장이 n개 있다면 그 것이 참이므로 n을 출력할 수 있다.3. 0개에서 내용이 모순될 수 있음에 주의하며 코드를 작성한다.코드
https://www.acmicpc.net/problem/1159문제 접근1. 총 선수 인원 수 입력 받기2. 총 인원 수만큼 반복하며 딕셔너리 자료구조에 key(이름의 앞글자) value(인원 수)로 저장3. 모든 인원이 저장된 딕셔너리에서 value가 5 이상인 이름(성)들을 리스트 자료구조에 저장4. 리스트 내의 이름(성) 알파벳 순으로 정렬하기5. 상황에 맞는 출력문 출력 문제 코드n = int(input())count = {}starting = []for _ in range(n): a = input() if a[0] not in count.keys(): count[a[0]] = 1 else: count[a[0]] += 1 for key, va..
https://www.acmicpc.net/problem/10823 문제 풀이sys 모듈을 호출합니다.총합을 담을 변수를 tot와 문자열 S를 초기화합니다.while 문으로 EOFError가 발생할 때까지 문자열 S에 입력을 받습니다.이 때 입력받은 S는 ',' 기준으로 구분합니다.','을 제외한 요소를 정수화하여 tot에 더하여 저장합니다. 총합 tot를 출력합니다.1) parse: 문제코드import systot=0S=""while True: try: S+=input() except EOFError: breakS=S.split(',')for i in S: tot+=int(i)print(tot)단, 해당 코드는 IDE 상에선 CTRL + D로 강제종료 해야지만..
1966번: 프린터 큐 (acmicpc.net)t=int(input())for _ in range(t): n,m=map(int,input().split()) #문서의개수n, 0~ 몇번째문서m arr=list(map(int,input().split())) for i in range(n): if (i==m): arr[i] = (arr[i],1) else: arr[i] = (arr[i],0) cnt=1 while (len(arr)!=0): x=arr.pop(0) flag="T" for i in range(n - cnt): if (arr[i][0] > x[0]..
https://www.acmicpc.net/problem/1673문제풀이import sysfor line in sys.stdin: n,k = map(int,line.split()) ans = n while True: if n//k > 0: ans += n//k n = n%k + n//k else: break print(ans)sys 모듈을 이용해 파일 단위 입력으로 한 번에 읽어온 후 그 안에서만 반복하며 EOF를 처리한다.sys.stdin으로 읽어온 입력을 line으로 나누어 한 줄씩 접근한다.line을 map으로 변수 2개에 정수로 나눠준다.쿠폰으로 치킨을 한 마리 시킬 때마다 도장을 1개 받음을..
https://www.acmicpc.net/problem/15657코드#include #include #include #include #include #include using namespace std;vector arr;bool visited[9] = { false, };int ans[9];int n, m;void recursive(int num, int cnt) { if (cnt == m) { for (int i = 0; i > n >> m; for (int i = 0; i > num; arr.push_back(num); } sort(arr.begin(), arr.end()); recursive(0,0); return 0;}알고리즘 분류 : ..
문제 & 링크https://www.acmicpc.net/problem/11880 풀이!! 범위를 고려하여 long long int 자료형을 사용하여야 함!!1. 개미가 이동한 최단 거리는 (세로 + 높이)와 가로를 두 변으로 하는 빗변이기에 가로의 길이가 제일 길어야 한다. * 세로 or 높이가 가장 길 경우 개미가 이동한 경로는 최단 거리가 아니게 되므로 모순이 된다.2. algorithm 헤더 파일의 max 함수를 이용하여 세 값 중 가장 큰 값(가로)을 저장한다.3. if 문을 사용하여 가장 큰 값(가로)이 아닌 두 값(세로, 높이)의 합을 저장한다.4. 2와 3을 이용하여 거리의 제곱을 출력한다. 이슈알고리즘에 문제가 없는데도 시간 초과가 지속적으로 발생했다. 해결코딩테스트에 한정하여 프로그램의..
문제 & 링크https://www.acmicpc.net/problem/8979 풀이1. vector 자료구조를 사용하여 입력받을 각 나라별 금, 은, 동메달의 개수를 저장한다.2. 등수를 알고 싶은 국가와 국가 번호가 같을 때 해당 인덱스를 저장한다.3. for문을 이용하여 등수를 알고 싶은 국가와 그 외 다른 모든 국가를 비교하며 rank 변수를 조정한다.* 자기 자신보다 등수가 높은 국가가 몇 개인지 알면 되기에, 금 -> 은 -> 동 순서로 메달을 비교하며 순위를 떨어뜨린다(변수 값은 상승). 코드#include #include using namespace std;int main() { int N, K; cin >> N >> K; vector G; vector S..
https://www.acmicpc.net/problem/2947문제문제풀이우선 입력받은 숫자들을 리스트에 저장한다. 만약 리스트에 원소들이 [1, 2, 3, 4, 5]가 아닐 경우에는 계속해서 while반복문을 실행하면서 리스트에 원소들이 [1, 2, 3, 4, 5]가 되도록 한다. for반복문을 통해 i번째 원소의 숫자와 i+1번째 원소의 숫자를 비교해서 만약 i번째 원소의 숫자가 크다면 i+1번째 원소의 숫자와 교환한다. 그리고 변경된 리스트를 출력한다.소스코드nList = list(map(int, input().split()))while ' '.join(map(str, nList)) != "1 2 3 4 5": for i in range(len(nList)-1): if nList..