일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- buffer
- Algorithm
- Serialization
- 윤성우의 열혈 자료구조
- C programming
- insertion sort
- 이스케이프 문자
- stream
- C 언어 코딩 도장
- s
- Graph
- Selection Sorting
- 메모리구조
- datastructure
- 이것이 자바다
- 혼자 공부하는 C언어
- 윤성우 열혈자료구조
- R
- list 컬렉션
- coding test
- 알기쉬운 알고리즘
- JSON
- Stack
- Today
- Total
목록Problem Solving (182)
Engineering Note
문제 https://www.acmicpc.net/problem/2210 [ 2210번: 숫자판 점프 111111, 111112, 111121, 111211, 111212, 112111, 112121, 121111, 121112, 121211, 121212, 211111, 211121, 212111, 212121 이 가능한 경우들이다. www.acmicpc.net ](https://www.acmicpc.net/problem/2210) 문제해결방법 2중 for 문으로 임의의 시작 위치를 정한다. 현재 위치에 있는 숫자를 Number 우측에 저장한다. 현재 위치에서 상,하,좌,우 이동할 다음 위치를 정한다. Number 길이가 6이 아니면 2번으로 돌아간다. Number 길이가 6이면 Number를 집합 자료..
문제 https://www.acmicpc.net/problem/5585 5585번: 거스름돈 타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사 www.acmicpc.net 문제해결방법 잔돈을 나눌 수 있는 가장 큰 동전(몫이 0보다 큰)으로 나눈 몫을 answer에 더한다.(answer의 초기값은 0이다.) 나머지 값을 잔돈에 저장한다. 잔돈이 0이 될때 까지 위 과정을 반복한다. 코드 import sys n = int(input()) coins = [500,100,50,10,5,1] answer = 0 changes = 1000 - n ..
문제 https://www.acmicpc.net/problem/10808 [ 10808번: 알파벳 개수 단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다. www.acmicpc.net ](https://www.acmicpc.net/problem/10808) 문제해결방법 a부터 z까지 0부터 25라는 번호를 붙여준다.(아스키코드 - 97) a의 아스키코드 값이 97이기 때문에 -97을 해주면 0부터 25까지 번호가 부여된다. 문자열의 문자를 for문으로 하나씩 추출한다. 추출한 문자를 아스키코드로 변환하고 - 97을 통해 초기에 부여한 번호로 만들어준다. 문자에 부여한 번호 해당하는 배열의 인덱스의 값을 하나 증가시킨다. 문자가 출현한 개수를 저장한 배열을 출력한다..
문제 https://www.acmicpc.net/problem/3273 3273번: 두 수의 합 n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는 www.acmicpc.net 문제해결방법 서로 다른 n개의 양의 정수가 핵심이다. 입력받은 수열을 정렬한다.(오름차순을 기준으로 설명) 0번 인덱스의 수와 n-1인덱스의 수를 더한 값을 x와 비교한다. 같으면 카운트 값을 증가시키고 좌측을 가리키는 인덱스는 하나 증가시키고 우측을 가리키는 인덱스는 하나 감소시킨다. 두 합이 작으면 좌측인덱스를 하나 증가시킨다. 합이..
문제 https://www.acmicpc.net/problem/5543 [ 5543번: 상근날드 입력은 총 다섯 줄이다. 첫째 줄에는 상덕버거, 둘째 줄에는 중덕버거, 셋째 줄에는 하덕버거의 가격이 주어진다. 넷째 줄에는 콜라의 가격, 다섯째 줄에는 사이다의 가격이 주어진다. 모든 가 www.acmicpc.net ](https://www.acmicpc.net/problem/5543) 문제해결방법 햄버거가 세 종류이므로 세 번의 입력을 받아 가장 작은 햄버거 가격을 구한다. 음료의 종류가 두 종류이므로 두 번의 입력을 받가 가장 작은 음료의 가격을 구한다. 가장 작은 햄버거의 가격과 가장 작은 음료의 가격을 더해서 세트 할인 가격 50을 뺀 값을 출력한다. 코드 import sys import math m..
문제 https://www.acmicpc.net/problem/10039 [ 10039번: 평균 점수 입력은 총 5줄로 이루어져 있고, 원섭이의 점수, 세희의 점수, 상근이의 점수, 숭이의 점수, 강수의 점수가 순서대로 주어진다. 점수는 모두 0점 이상, 100점 이하인 5의 배수이다. 따라서, 평균 점 www.acmicpc.net ](https://www.acmicpc.net/problem/10039) 문제해결방법 다섯번의 입력을 받으면서 입력 받은 값이 40과 비교한다. 비교하여 40보다 작으면 40일을 SUM변수의 누적하여 더하한다. 만약 40이상이면 입력된 값을 SUM변수에 누적하여 더한다. 5번의 입력이 끝나면 SUM을 5로 나누어 평균을 구한다. 코드 import sys sum = 0 for ..
문제 https://www.acmicpc.net/problem/10491 [ 10491번: Quite a problem It gets tiring, looking for all ways in which the word ‘problem’ can be used (and mis-used) in the news media. And yet, that’s been your job for several years: looking through news stories for that word. Wouldn’t it be better if you could automate www.acmicpc.net ](https://www.acmicpc.net/problem/10491) 문제해결방법 각 열마다 데이터를 입력받고, 전부..
문제 https://www.acmicpc.net/problem/17503 [ 17503번: 맥주 축제 첫 번째 줄에 축제가 열리는 기간 N (1 ≤ N ≤ 200,000) 과, 채워야 하는 선호도의 합 M (1 ≤ M < 231) 과, 마실 수 있는 맥주 종류의 수 K (N ≤ K ≤ 200,000) 가 주어집니다. 다음 K개의 줄에는 1번부터 K www.acmicpc.net ](https://www.acmicpc.net/problem/17503) 문제해결방법 이 문제에서 핵심은 N개의 맥주를 마시면서 선호도를 M을 만족시키는 최소의 간수치를 구하는 것이다. 최소 도수에서 맥주를 차례 대로 마시면서 마신 맥주가 N개가 되는지 확인한다. 선호도가 M을 만족하는지 체크한다. 선호도 M을 만족하지 않았으면 지..