목록분류 전체보기 (167)
코디잉
https://www.acmicpc.net/problem/19532 19532번: 수학은 비대면강의입니다 정수 $a$, $b$, $c$, $d$, $e$, $f$가 공백으로 구분되어 차례대로 주어진다. ($-999 \leq a,b,c,d,e,f \leq 999$) 문제에서 언급한 방정식을 만족하는 $\left(x,y\right)$가 유일하게 존재하고, 이 때 $x$와 $y$가 각각 $- www.acmicpc.net 접근 방식) 브루트포스 어떻게 해야되는지 엄청 노트에 적고 하고 있었는데... 그냥 -999~999까지 2중 반복문 다 돌리면 되는거였다 ㅎ.... package codingTestStudy.week2; import java.util.*; import java.io.*; public class..
https://school.programmers.co.kr/learn/courses/30/lessons/42840 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 접근 방식) 1. 수포자가 찍는 방식을 보면 숫자가 반복되는 패턴을 발견할 수 있다. 2. 이 문제에서는 수포자가 3명 밖에 안되니까 정답 배열을 돌면서, 각각의 수포자가 맞았는지 확인해주면서 맞췄으면 count를 셀 예정이다. 3. 그 중 max값을 찾고 4. max 값을 가진 수포자의 번호를 return → 풀다 보니 3가지 방법으로 풀어봤다. (프로그래머스 제출 후 시간 비교 사진 첨부) 1..
https://github.com/yong-k/TRIPLAN GitHub - yong-k/TRIPLAN: ✈Spring 여행 플래너 웹 애플리케이션: TRIPLAN ✈Spring 여행 플래너 웹 애플리케이션: TRIPLAN. Contribute to yong-k/TRIPLAN development by creating an account on GitHub. github.com
https://github.com/yong-k/project_togetherlion GitHub - yong-k/project_togetherlion: 🦁Spring 지역기반 공동구매 웹 애플리케이션: 같이사자 🦁Spring 지역기반 공동구매 웹 애플리케이션: 같이사자. Contribute to yong-k/project_togetherlion development by creating an account on GitHub. github.com
https://www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 접근 방식) "방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문"한다는 걸 기억해두고, DFS, BFS방식으로 구현하면 된다. package tony_git.graph_traversal; import java.util.*; public class B_1260 { static ArrayList[] A; static boolean[] v..
https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍 www.acmicpc.net 접근 방식) 컴퓨터의 수(노드)와 네트워크 쌍(엣지)가 주어진다. 1번 컴퓨터를 통해 DFS로 1번을 제외하고 DFS 타고 들어가는 횟수를 구하면 된다. DFS, BFS 방식으로 모두 풀어볼 계획 → BFS가 더 빨랐다. 1) DFS package tony_git.graph_traversal; import java.util.*; public class B_2606_DFS { static ArrayLis..
https://www.acmicpc.net/problem/11286 11286번: 절댓값 힙 첫째 줄에 연산의 개수 N(1≤N≤100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 0이 아니라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 접근 방식) 1. "배열에서 절댓값이 가장 작은 값을 출력하고, 그 값을 배열에서 제거한다. 절댓값이 가장 작은 값이 여러개일 때는, 가장 작은 수를 출력하고, 그 값을 배열에서 제거한다." 도록 우선순위큐 정렬 정의 2. 조건 분기에 맞게 큐에 넣고, 빼고 출력하고 하도록 코드작성 import java.io.BufferedReader; import java.io.IOExce..
https://www.acmicpc.net/problem/4358 4358번: 생태학 프로그램은 여러 줄로 이루어져 있으며, 한 줄에 하나의 나무 종 이름이 주어진다. 어떤 종 이름도 30글자를 넘지 않으며, 입력에는 최대 10,000개의 종이 주어지고 최대 1,000,000그루의 나무가 주어 www.acmicpc.net 접근 방식) 나무의 이름을 입력받으면서 전체 나무 개수를 세고, HashMap으로 나무 이름을 key값으로 두고 나무이름이 나오면 value값을 증가시키면 된다. 입력이 없으면, 반복문 멈추고 출력해주면 된다. "나무이름 (현재 나무 개수 / 전체 나무 개수 * 100)" 1. scanner의 hasNextLine()을 사용해서 다음에 읽을 값이 있는지 확인하며 반복문을 돈다. 2. m..
https://www.acmicpc.net/problem/2075 2075번: N번째 큰 수 첫째 줄에 N(1 ≤ N ≤ 1,500)이 주어진다. 다음 N개의 줄에는 각 줄마다 N개의 수가 주어진다. 표에 적힌 수는 -10억보다 크거나 같고, 10억보다 작거나 같은 정수이다. www.acmicpc.net 접근 방식) N²개의 수가 주어졌을 때, N번째 큰 수를 찾는 것이므로, 1. 내림차순의 우선순위 큐를 만들어서, N²개를 입력한다. 2. N - 1개 까지의 큰 수를 poll()하고 3. N번째로 큰 수를 출력한다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java...
https://www.acmicpc.net/problem/11279 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 접근 방식) 1. 내림차순으로 정렬하는 우선순위 큐를 만든다. 2. 조건에 맞게 분기해서 큐에 넣고, 빼고, 값 출력하도록 해준다. 두 가지 방식으로 풀었었는데, 입력+우선순위큐 정렬 정의 + 조건 분기하는 쪽에 약간의 차이만 있다. 1) Scanner, Collections.reverseOrder() package tony_git.data_structure2; import..