컴퓨터 프로그래밍/알고리즘
[알고리즘] Baekjoon Bronze 2,3
한33
2025. 1. 30. 20:09
Baekjoon Bronze 2,3 을 풀면서 알게된 작은 정보들 메모
💡 그대로 출력
while(sc.hasNextLine()) {
System.out.println(sc.nextLine());
}
다음 줄 입력이 있을 때 까지 반복문을 돌면서 입력받은 것을 그대로 출력시킨다.
💡 자료구조 Set
Set<Integer> mySet = new HashSet<>();
mySet.add(temp);
System.out.println(mySet.size());
중복을 피하기 때문에 다 다른 값들만 저장시킬 수 있음.
💡 N제곱
Math.pow(x, y);
Math 의 pow 를 사용해서 x 의 y 제곱을 구할 수 있다.
💡 N진수 변환
String hex = sc.next();
int result = Integer.parseInt(hex, 16);
위와 같은 방법으로 문자열로 받아온 값을 원하는 진수로 변환할 수 있다.
💡 sc.hasNextLine()
while(sc.hasNextLine()) {
while 문을 이용해서 hasNextLine 을 사용하면 입력값이 있는 동안 반복을 시킬 수 있다.
💡 아스키 코드
// 공백 32
if (text[i] == 32) blank++;
// 숫자 48~57
else if (48 <= text[i] && text[i] <= 57) num++;
// 대문자 65~90
else if (65 <= text[i] && text[i] <= 90) big++;
// 소문자 97~122
else if (97 <= text[i] && text[i] <= 122) small++;
💡 printf 와 %d
System.out.printf("%d %d %d %d\n", small, big, num, blank);
printf 를 사용하면 %d, %f 등을 사용할 수 있다.
💡 이중 for 문 탈출
outer: // 라벨 이름
for (...) {
for (...) {
if (조건) {
break outer; // 바깥 루프까지 탈출
}
}
}
이중 for 문을 한 번에 탈출하고 싶을 때 for 문 위에 라벨 이름을 명시해주고 break (라벨명); 을 통해 한 번에 탈출시킬 수 있다.