본문 바로가기
728x90
반응형

백준/10001 - 1500019

[백준] 14226번 : 이모티콘(JAVA) https://www.acmicpc.net/problem/14226 14226번: 이모티콘 영선이는 매우 기쁘기 때문에, 효빈이에게 스마일 이모티콘을 S개 보내려고 한다. 영선이는 이미 화면에 이모티콘 1개를 입력했다. 이제, 다음과 같은 3가지 연산만 사용해서 이모티콘을 S개 만 www.acmicpc.net 풀이 [화면에 있는 이모티콘 갯수, 클립보드에 있는 이모티콘 갯수] 형태로 값을 저장하면서 해당 규칙을 수행해 나가면서 bfs를 돌리면됩니다. 아무 입력없이 처음에 화면에 1을 입력해서 [1,0]으로 시작합니다. 1. 화면에 이모티콘을 클립보드에 복사 => [x, y] -> [x, x] 2. 클립보드에 있는 모든 이모티콘을 화면에 붙여넣기 => [x, y] -> [x + y, y] 3. 화면에 있는.. 2021. 12. 28.
[백준] 10026번 : 적록색약(JAVA) https://www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 풀이 일반인 = R, G, B 적록색약 = R + G, B 의 갯수를 체크해주면 되는 문제입니다. 일반인의 갯수를 체크해 준 후 R을 G로 or G를 R로 바꿔서 다시 dfs나 bfs를 돌려주면 되는 문제입니다. 소스코드 bfs import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader.. 2021. 11. 2.
[백준] 11003번 : 최솟값 찾기(JAVA) https://www.acmicpc.net/problem/11003 11003번: 최솟값 찾기 N개의 수 A1, A2, ..., AN과 L이 주어진다. Di = Ai-L+1 ~ Ai 중의 최솟값이라고 할 때, D에 저장된 수를 출력하는 프로그램을 작성하시오. 이때, i ≤ 0 인 Ai는 무시하고 D를 구해야 한다. www.acmicpc.net 풀이 덱과 배열 1개를 이용하여 풀 수 있습니다. 덱에는 배열의 인덱스 위치만 저장하고 값을 입력받을 때마다, 덱의 마지막값의 위치에 있는 배열을 가져와 비교하면서 제거해주면 됩니다. 또한 i - 덱의 처음값이 l보다 클 경우 맨앞자리를 빼줍니다. 소스코드 import java.io.BufferedReader; import java.io.IOException; im.. 2021. 10. 31.
[백준] 12015번 : 가장 긴 증가하는 부분 수열2(JAVA) https://www.acmicpc.net/problem/12015 12015번: 가장 긴 증가하는 부분 수열 2 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ Ai ≤ 1,000,000) www.acmicpc.net 풀이 처음수로 0을 주어지고 count로 위치를 1로 지정합니다. count - 1보다 수가 클경우 count위치에 값을 넣고 증가시킵니다. 아닐 경우 value의 위치를 구하고 그 위치에 값으 value로 변경해줍니다. 소스코드 ArrayList + 이분 구현 import java.io.BufferedReader; import java.io.IOException; import java.io.In.. 2021. 9. 9.
728x90
반응형