-
[해커랭크] Two Strings #JAVAAlgorithm Solving/BAEKJOON 2021. 2. 1. 23:58
[해커랭크] Two Strings
코드
import java.io.*; import java.math.*; import java.security.*; import java.text.*; import java.util.*; import java.util.concurrent.*; import java.util.regex.*; public class Solution { // Complete the twoStrings function below. static String twoStrings(String s1, String s2) { int[] alphbet = new int[26]; int sum = 0; //배열에 해당 알파벳이 나올 때마다 값 증가 for(char c : s1.toCharArray()){ alphbet[c-'a']++; } //배열에 해당 알파벳이 나올 때마다 값 감소. for(char c : s2.toCharArray()){ if(alphbet[c-'a']>0) alphbet[c-'a']--; //단, 값이 있는 경우. } sum = Arrays.stream(alphbet).sum(); //s1 문자열의 길이와 배열의 합이 다르면 겹치는 알파벳이 있는 것 return s1.length() !=sum ? "YES" : "NO"; } private static final Scanner scanner = new Scanner(System.in); public static void main(String[] args) throws IOException { BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(System.getenv("OUTPUT_PATH"))); int q = scanner.nextInt(); scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?"); for (int qItr = 0; qItr < q; qItr++) { String s1 = scanner.nextLine(); String s2 = scanner.nextLine(); String result = twoStrings(s1, s2); bufferedWriter.write(result); bufferedWriter.newLine(); } bufferedWriter.close(); scanner.close(); } }
풀이
- 주석 참고
잘못된 코드나 내용이 있다면 댓글을 남겨주세요. 즉시 수정하도록 하겠습니다! :)
'Algorithm Solving > BAEKJOON' 카테고리의 다른 글
[백준] 11404 플로이드 #JAVA (0) 2021.02.15 [백준] 11657 타임머신 #JAVA 출력초과 (0) 2021.02.07 [백준] 1300 K번째 수 #JAVA (0) 2021.02.01 [백준] 1021 회전하는 큐 #JAVA (0) 2021.01.31 [백준] 6198 옥상 정원 꾸미기 #JAVA (0) 2021.01.31