본문 바로가기

분류 전체보기

(35)
D+7 백준 2693 N번째 큰 수 백준 2693 N번째 큰 수 - 실버 5 문제는 항상 10개의 숫자가 나오고 N번째 큰수의 N은 3으로 매번동일하다. 정렬한후 뒤에서 3번째 배열 값을 가져오면된다. https://www.acmicpc.net/problem/2693 2693번: N번째 큰 수 첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 1,000)가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 배열 A의 원소 10개가 공백으로 구분되어 주어진다. 이 원소는 1보다 크거나 같고, 1,000 www.acmicpc.net import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException ..
D+7 백준 2609 최대공약수와 최소공배수 백준 2609 최대공약수와 최소공배수 - 실버 5 * 손으로 최대공약수와 최소공배수를 구할때를 참고하였다. 2 24 18 3 12 9 4 3 어렸을 적 최대공약수와 최소공배수를 구할때는 상기 표와 같이 진행했다. 1) 공통의 약수로 나누어 떨어지지 않을 때까지 나눈다. 2) 최대공약수 : 왼편의 나누는 값의 곱 (2 * 3) 3) 최소공배수 : 왼편의 나누는 값 * 나머지의 값 (2 * 3 * 4 * 3) 이걸 코드로 진행하면 입력받은 두 수를 나누는 나머지가 0인 수를 계속 곱해간다 > 이것이 최대공약수가 된다. 끝까지 가서 나누어 떨어지지 않을때, 남은 숫자들을 다 곱한다 > 최소공배수 https://www.acmicpc.net/problem/2609 2609번: 최대공약수와 최소공배수 첫째 줄에는 ..
D+6 백준 - 2309 일곱난쟁이 백준 2309 일곱난쟁이 - 브론즈 2 * 해당문제를 푸는 힌트는 9명의 난쟁이중 진짜 난쟁이는 7명 --> 이 7명을 찾는것이 아니라 해당하지 않는 2명의 난쟁이를 찾는것이다. 처음 7명을 찾고자했을때, ㅇ ㅇ ㅇ ㅇ ㅇ ㅇ ㅇ ㅇ ㅇ 9명에서 해당하는 7명을 찾으려면.. DFS, BFS를 사용해야하는건가? 도합 100이되는걸 찾도록...? 7중 for문을 사용할순 없으니.. 하고 생각했다. 하지만 해당문제를 뒤집어서 생각해보면 맞는 7명을 찾는것이 아니라 맞지않는 2명만 찾아내면 된다. --> 이중 포문으로 해결가능함. 첫번째 for문에서 한 난쟁이를 빼고, 남은 sum값에서 두번째 난쟁이를 뺐을때 합이 100이되면 문제에 해당하는 답을 도출할 수 있다. 두 난쟁이를 찾으면 정렬 후 해당하는 값이 아..
D+6 백준 피보나치 5 : 브론즈 2 https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(Syst..
D+5 작심N일, 다시시작 백준 이진수 : 브론즈 3 https://www.acmicpc.net/problem/3460 3460번: 이진수 양의 정수 n이 주어졌을 때, 이를 이진수로 나타냈을 때 1의 위치를 모두 찾는 프로그램을 작성하시오. 최하위 비트(least significant bit, lsb)의 위치는 0이다. www.acmicpc.net import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokeniz..
D+4 작심N일. 다시시작 1. 백준 약수구하기 : 브론즈 3 https://www.acmicpc.net/problem/2501 2501번: 약수 구하기 첫째 줄에 N과 K가 빈칸을 사이에 두고 주어진다. N은 1 이상 10,000 이하이다. K는 1 이상 N 이하이다. www.acmicpc.net import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(b..
D+2, 3 2일 3일 삼성sw 알고리즘 강의를 듣고 동일한 문제를 풀었다. 결국 해설을 보기는 했지만... 1240. [S/W 문제해결 응용] 1일차 - 단순 2진 암호코드 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AXHx23oq0REDFAXR SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 우선 해당문제를 풀면서 Java 알고리즘 문제 풀시 사용하는 1. BufferedReader 2.StringTokenizer 사용을 배웠다. 1. BufferedReader BufferedReader br = new BufferedRead..
D+1 1970. 쉬운 거스름돈 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PsIl6AXIDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 9940. 순열1 음.. 소름 돋는군.. break를 쓸수없었다. 입력값을 계속 받기에 break 를 쓰면 입력값이 밀려서 오류남. 쓰고 테케 5개를 맞춘것도 용하네.. 내일은 순열 2~ 도 풀어볼수 있도록 .. https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AXHx23oq0REDFA..