본문 바로가기

알고리즘(Java)/HashMap & TreeSet5

[알고리즘]TreeSet - K번째 큰 수 5. K번째 큰 수 기록한 값 중 K번째로 큰 수를 출력하는 프로그램 1부터 100사이의 자연수가 적힌 N장의 카드를 가지고 있습니다. 같은 숫자의 카드가 여러장 있을 수 있습니다. 이 중 3장을 뽑아 각 카드에 적힌 수를 합한 값을 기록하려고 합니다. 3장을 뽑을 수 있는 모든 경우를 기록합니다. 입력) 첫 줄에 자연수 N(3 2021. 8. 3.
[알고리즘]HashMap & Sliding window - 모든 아나그램 찾기 4. 모든 아나그램 찾기 S문자열에서 T문자열과 아나그램이 되는 S의 부분문자열의 개수를 구하는 프로그램 아나그램 판별시 대소문자가 구분됩니다. 부분문자열은 연속된 문자열이어야 합니다. 입력) 첫 줄에 첫 번째 S문자열이 입력되고, 두 번째 줄에 T문자열이 입력됩니다. 출력) S단어에 T문자열과 아나그램이 되는 부분문자열의 개수를 출력합니다. import java.util.HashMap; import java.util.Scanner; public class Main { public static int solution(String s, String t) { int answer = 0, k = t.length()-1; HashMap smap = new HashMap(); HashMap tmap = new H.. 2021. 8. 2.
[알고리즘]HashMap & Sliding window - 매출액의 종류 3. 매출액의 종류 N일간의 매출기록과 연속구간의 길이 K가 주어지면 첫 번째 구간부터 각 구간별 매출액의 종류를 출력하는 프로그램 입력) 첫 줄에 N(5 2021. 8. 2.
[알고리즘]HashMap - Anagram(아나그램) 2. 아나그램 길이가 같은 두 개의 단어가 주어지면 두 단어가 아나그램인지 판별하는 프로그램 Anagram : 두 문자열의 알파벳 나열 순서가 다르지만 그 구성이 일치하는 단어. 어느 한 단어를 재 배열하면 상대편 단어가 될 수 있음. 아나그램 판별시 대소문자가 구분됩니다. 입력) 첫 줄에 첫 번째 단어가 입력되고, 두 번째 줄에 두 번째 단어가 입력됩니다. 출력) 두 단어가 아나그램이면 “YES"를 출력하고, 아니면 ”NO"를 출력합니다. 1) import java.util.HashMap; import java.util.Scanner; public class Main { public static String solution(String a, String b) { String answer = "YES";.. 2021. 8. 1.
[알고리즘]HashMap - 학급 회장 1. 학급 회장 어떤 기호의 후보가 학급 회장이 되었는지 출력하는 프로그램 학급 회장을 뽑는데 후보로 기호 A, B, C, D, E 후보가 등록을 했습니다. 반드시 한 명의 학급회장이 선출되도록 투표결과가 나왔다고 가정합니다. 입력) 첫 줄에는 반 학생수 N(5 2021. 8. 1.