Java 알고리즘 문제
-
JAVA 알고리즘 문제 - k번째 큰 수Java 알고리즘 문제/자바(Java) 알고리즘 문제풀이 입문 2024. 9. 19. 10:38
설명현수는 1부터 100사이의 자연수가 적힌 N장의 카드를 가지고 있습니다. 같은 숫자의 카드가 여러장 있을 수 있습니다.현수는 이 중 3장을 뽑아 각 카드에 적힌 수를 합한 값을 기록하려고 합니다. 3장을 뽑을 수 있는 모든 경우를 기록합니다.기록한 값 중 K번째로 큰 수를 출력하는 프로그램을 작성하세요.만약 큰 수부터 만들어진 수가 25 25 23 23 22 20 19......이고 K값이 3이라면 K번째 큰 값은 22입니다. 입력첫 줄에 자연수 N(3 출력첫 줄에 K번째 수를 출력합니다. K번째 수가 존재하지 않으면 -1를 출력합니다.예시 입력 1 10 3 13 15 34 23 45 65 33 11 26 42 예시 출력 1143 전체코드package com.example.demo;import ja..
-
[JAVA] 알고리즘 문제 - 두 배열 합치기Java 알고리즘 문제/자바(Java) 알고리즘 문제풀이 입문 2024. 7. 24. 00:47
두 배열 합치기 설명오름차순으로 정렬이 된 두 배열이 주어지면 두 배열을 오름차순으로 합쳐 출력하는 프로그램을 작성하세요. 입력첫 번째 줄에 첫 번째 배열의 크기 N(1두 번째 줄에 N개의 배열 원소가 오름차순으로 주어집니다.세 번째 줄에 두 번째 배열의 크기 M(1네 번째 줄에 M개의 배열 원소가 오름차순으로 주어집니다.각 리스트의 원소는 int형 변수의 크기를 넘지 않습니다. 출력오름차순으로 정렬된 배열을 출력합니다. 예시 입력 1 3 1 3 552 3 6 7 9 예시 출력 11 2 3 3 5 6 7 9 package section3;import java.util.ArrayList;import java.util.Scanner;public class twoPointers { public stat..
-
JAVA 알고리즘 문제 - 모든 아나그램 찾기Java 알고리즘 문제/자바(Java) 알고리즘 문제풀이 입문 2023. 10. 19. 10:48
모든 아나그램 찾기 Anagram이란 두 문자열이 알파벳의 나열 순서를 다르지만 그 구성이 일치하면 두 단어는 아나그램이라고 합니다. 설명 S문자열에서 T문자열과 아나그램이 되는 S의 부분문자열의 개수를 구하는 프로그램을 작성하세요. 아나그램 판별시 대소문자가 구분됩니다. 부분문자열은 연속된 문자열이어야 합니다. 입력 첫 줄에 첫 번째 S문자열이 입력되고, 두 번째 줄에 T문자열이 입력됩니다. S문자열의 길이는 10,000을 넘지 않으며, T문자열은 S문자열보다 길이가 작거나 같습니다. 출력 S단어에 T문자열과 아나그램이 되는 부분문자열의 개수를 출력합니다. 입력예제 bacaAacba abc 출력예제 3 전체코드 package Level1; import java.util.HashMap; import ja..
-
JAVA 알고리즘 문제 - 매출액의 종류(sliding window)Java 알고리즘 문제/자바(Java) 알고리즘 문제풀이 입문 2023. 10. 17. 14:15
매출액의 종류(sliding window) 설명 현수의 아빠는 제과점을 운영합니다. 현수아빠는 현수에게 N일 동안의 매출기록을 주고 연속된 K일 동안의 매출액의 종류를 각 구간별로 구하라고 했습니다. 만약 N=7이고 7일 간의 매출기록이 아래와 같고, 이때 K=4이면 20 12 20 10 23 17 10 각 연속 4일간의 구간의 매출종류는 첫 번째 구간은 [20, 12, 20, 10]는 매출액의 종류가 20, 12, 10으로 3이다. 두 번째 구간은 [12, 20, 10, 23]는 매출액의 종류가 4이다. 세 번째 구간은 [20, 10, 23, 17]는 매출액의 종류가 4이다. 네 번째 구간은 [10, 23, 17, 10]는 매출액의 종류가 3이다. N일간의 매출기록과 연속구간의 길이 K가 주어지면 첫 ..
-
JAVA 알고리즘 문제 - 아나그램(Anagram)Java 알고리즘 문제/자바(Java) 알고리즘 문제풀이 입문 2023. 10. 16. 16:17
아나그램(Anagram) 설명 Anagram이란 두 문자열이 알파벳의 나열 순서를 다르지만 그 구성이 일치하면 두 단어는 아나그램이라고 합니다. 예를 들면 AbaAeCe 와 baeeACA 는 알파벳을 나열 순서는 다르지만 그 구성을 살펴보면 A(2), a(1), b(1), C(1), e(2)로 알파벳과 그 개수가 모두 일치합니다. 즉 어느 한 단어를 재 배열하면 상대편 단어가 될 수 있는 것을 아나그램이라 합니다. 길이가 같은 두 개의 단어가 주어지면 두 단어가 아나그램인지 판별하는 프로그램을 작성하세요. 아나그램 판별시 대소문자가 구분됩니다. 입력 첫 줄에 첫 번째 단어가 입력되고, 두 번째 줄에 두 번째 단어가 입력됩니다. 단어의 길이는 100을 넘지 않습니다. 출력 두 단어가 아나그램이면 “YES"..
-
JAVA 알고리즘 문제 - 학급회장(Hash Map)Java 알고리즘 문제/자바(Java) 알고리즘 문제풀이 입문 2023. 10. 16. 14:04
학급회장(Hash Map) 설명 학급 회장을 뽑는데 후보로 기호 A, B, C, D, E 후보가 등록을 했습니다. 투표용지에는 반 학생들이 자기가 선택한 후보의 기호(알파벳)가 쓰여져 있으며 선생님은 그 기호를 발표하고 있습니다. 선생님의 발표가 끝난 후 어떤 기호의 후보가 학급 회장이 되었는지 출력하는 프로그램을 작성하세요. 반드시 한 명의 학급회장이 선출되도록 투표결과가 나왔다고 가정합니다. 입력 첫 줄에는 반 학생수 N(5 해당 값이 있으면 해당 값을 가져온다. //가져온 값에서 +1을 해주는 것 //없으면 map.getOrDefault 라는 값이 key인 x값이 없으니까 0을 리턴한다 //그리고 난 후 +1을 해준다. map.put(x, map.getOrDefault(x, 0)+1); } int ..