항해99 14

해시 Hash

데이터를 효율적으로 저장하고 검색하기 위한 알고리즘Java 에선 HashMap, HashSet, Hashtable - 해시 알고리즘을 사용하여면 먼저 데이터의 해시 값을 계산해야 하는데, 하나의 객체 당 하나의 해시 코드가 생성 됨. Key-value 에서 key를 테이블에 저장할 때 key 값을 Hash Method 를 이용해 계산을 수행한 후, 그 결과값을 배열의 인덱스로 사용하여 저장하는 방식이다. 선언HashMap map = new HashMap();입력 map.put("apple", 100); /// key : valuemap.put("banana", 200); /// key에 값 넣기map.put("orange", 300);출력System.out.println("apple의 값 " + map...

항해99 알고리즘 7일차

package hanghee99;import java.math.BigInteger;import java.util.Scanner;public class BOJ15829_07 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int l = sc.nextInt(); String s = sc.next(); long total = 0; double pow = 1; for (int i = 0; i  문제가 길지만 하고 싶은 말은 r31로 하고 M의 값은 1234567891(알파벳의 수 * r의 자리 수 제곱) % M이다입니다. 각 알파벳의 숫자..

항해99 알고리즘 3일차

package hanghee99;import java.util.Scanner;public class BOJ2675_03 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int t = sc.nextInt(); for (int i = 0; i  오늘의 문제는 문자열 반복 문제로 2중 for 문을 사용해서 금방 풀 수 있었다. 오늘은 저번의 nextInt를 활용한 문제 오류를 해결할 수 있었다.sc.nextInt()로 정수 입력을 받은 뒤 바로 sc.nextLine()을 호출하면, 줄바꿈 문자(\n)를 처리하지 못하고 빈 문자열이 저장되는 것을 생각하여 문제를 풀면 쉽게 풀..

항해99 알고리즘 1일차

문제는 "문자열 내 p와 y의 개수" 이다. 문자열 문제로 가볍게 풀 수 있었다. 핵심은 char를 통해서 하나하나 나눈 뒤 for 문을 통해서 배열 하나하나의 값을 가지고 구별하면 된다. 프로그래머스는 오랜만에 사용해서 문제를 IDE로 푼 뒤 값을 넣는 방법이 오래 걸렸다... ㅎ 방법은 s에 값이 들어왔을 때 s를 어떻게 할지에 대하여 answer를 어떻게 받으면 된다!! class Solution { boolean solution(String s) { int y = 0; int p = 0; char[] str = s.toCharArray(); for(int i = 0; i