본문 바로가기

알고리즘80

백준 1157번 단어 공부 나는 이 문제를 풀 때, 대문자와 소문자의 아스키코드 차이 값이 32이기 때문에 소문자에서 32를 뺀 후 그 숫자들 가운데 빈도수를 계산해보려 했지만 실패했다. 그래서 다른 사람들의 코드를 봤더니 어차피 대문자로 출력을 해야하기 때문에 대문자로 바꿔놓고, 배열에 담을때 a 의 아스키값 만큼 빼주면 인덱스 0부터 A값이 차례대로 들어가게 된다. 그래서 이 값을 max값과 비교해서 가장 높은 빈도수의 경우를 구하고 아니면 ? 를 출력하면 된다. 2018. 6. 27.
백준 2675번 문자열 반복 2018. 6. 27.
백준 10809번 알파벳 찾기 for문 까지 작성은했지만 그 안에 if문 조건을 생각해내지 못했다. 배열안의 값과 97~122값이 같을때 배열안의 값 - 97을 해서 숫자는 출력을 했는데 나머지 칸을 -1을 채우는 문제와 복합적으로 여러가지가 헷갈렸다. 나와 비슷한 생각을 한 사람의 코드를 보니 우선 처음부터 -1로 다 채워놓고, arr[j-97]이 -1인 경우 아직 단어에 포함되어있는지 카운트가 되기전이기 때문에 카운트 안된곳에 카운트를 해서 수를 넣어야 하므로, arr[j-97] 위치에 i값을 넣는다. 2018. 6. 25.
백준 11654번 아스키 코드 문자하나를 입력받는 방법이 떠오르지 않았다. char c = sc.next().charAt(0); 대문자, 소문자는 Character.isUpperCase(); , isLowerCase()를 사용한다. 2018. 6. 25.
백준 2920번 음계 숫자로 값을 입력 받아서 풀 때와 String으로 입력받아서 풀 때 두가지 경우로 해봤다. 1. 숫자로 입력 받을 때 2. 문자로 입력 받을 때 2018. 6. 21.
백준 8958번 OX퀴즈 sc.nextInt() 후 nextLine()을 사용할 때, 반복문 내의 초기화, 배열로 풀어야 할 것 같지만 굳이 배열을 사용하지 않아도 풀 수 있다! 2018. 6. 21.