일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- JavaScript
- 돈
- 자바스크립트
- 독서
- 재테크
- 책을알려주는남자
- 채권
- 서평
- 독후감
- 알고리즘트레이닝
- 프로그래머스 알고리즘 공부
- 프로그래밍언어
- algorithmtraining
- 지혜를가진흑곰
- 책알남
- 알고리즘 공부
- 자바
- 다독
- 백준알고리즘
- 화장품
- algorithmStudy
- 주식
- C++
- C
- 알고리즘공부
- 투자
- Java
- algorithmTest
- 성분
- 경제
Archives
- Today
- Total
탁월함은 어떻게 나오는가?
[알고리즘 트레이닝] 백준 알고리즘 1157번: 단어 공부 [JAVA] 본문
[Snow-ball]프로그래밍(컴퓨터)/Algorithm Training
[알고리즘 트레이닝] 백준 알고리즘 1157번: 단어 공부 [JAVA]
Snow-ball 2021. 6. 18. 14:48반응형
DAY ONE 을 잊지말자!!
문제 :
알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.
입력 :
첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다.
출력 :
첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다.
풀이 1.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
package com.company;
import java.util.Scanner;
public class alphabet {
public static void main(String[] args) {
// 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이
// 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.
Scanner input = new Scanner(System.in);
int[] arr = new int[26];
String s = input.next();
System.out.println("s = " + s);
System.out.println("");
for (int i = 0; i < s.length(); i++) {
System.out.println("i = " + i);
System.out.println("s.charAt(i) = " + s.charAt(i));
if ('A' <= s.charAt(i) && s.charAt(i) <= 'Z') {
arr[s.charAt(i) - 'A']++;
System.out.printf("arr[%d] = %s\n\n", i, s.charAt(i) - 'a');
}
else {
arr[s.charAt(i) - 'a']++;
System.out.printf("arr[%d] = %s\n\n", i, s.charAt(i) - 'a');
}
}
int max = -1;
char ch = '?';
for (int i = 0; i < s.length(); i++) {
System.out.println("밑에 i = " + i);
System.out.println("max = " + max);
System.out.printf("arr[%d] = %s\n" ,i , arr[i]);
if (arr[i] > max) {
max = arr[i];
System.out.println("if안쪽 max = " + max);
ch = (char)(i+65);
System.out.println("ch = " + ch);
}
else if (arr[i] == max){
ch = '?';
}
}
System.out.print("ch : " + ch);
}
}
|
cs |
반응형
'[Snow-ball]프로그래밍(컴퓨터) > Algorithm Training' 카테고리의 다른 글
[알고리즘 트레이닝] 백준 알고리즘 5673번: 셀프 넘버[JAVA] (0) | 2021.06.20 |
---|---|
[알고리즘 트레이닝] 백준 알고리즘 15596번: 정수 N개의 합 [JAVA] (0) | 2021.06.19 |
[알고리즘 트레이닝] 구구단(gugudan) [JAVA] (0) | 2021.06.17 |
[알고리즘 트레이닝] String Reverse(문자열 뒤집기) [JAVA] (0) | 2021.06.16 |
[알고리즘 트레이닝] 백준 알고리즘 11720번 : 숫자의 합 [JAVA] (0) | 2021.06.15 |
Comments