본문 바로가기

알고리즘48

[알고리즘] 회문 문자열 with Java, equalsIgnoreCase() 회문 문자열을 구현해보고자 한다. 대소문자를 구분하지 않는 equals가 있다는 사실이 조금 신기했다. 오늘 배운 것 1. 문자열 반까지만 for문 돌기 i < len/2 i len-1-i 2. equalsIgnoreCase() 이 함수는 대소문자 구분 없이 판별해준다. System.out.println("t".equalsIgnoreCase("T"));// true 3. 문제 풀이 import java.util.Scanner; public class Main { public static String solution(String str) { String answer = "YES"; str = str.toUpperCase(); for (int i = 0; i < str.length()/2; i++) { if.. 2022. 2. 26.
[알고리즘] 중복문자 제거 with Java, indexOf(s.charAt(c)) 오늘 배운 것 1. 중복 문자열 판별하기 문자열 리스트 중 한 문자의 위치 == for문의 인덱스 i인 경우 해당 문자열이 첫번째로 나온 것임을 확인할 수 있다. 예를들어 test라는 문자열이 존재할 때, 아래의 표와 같이 마지막 T는 번호가 같지 않음을 확인할 수 있다. 이것은 중복 문자열이라고 하고 추가하지 않아야 한다. 2. 문제 풀이 import java.util.Scanner; public class Main { public static String solution(String str) { String answer = ""; for (int i = 0; i < str.length(); i++) { if(str.indexOf(str.charAt(i)) == i){ answer += str.char.. 2022. 2. 25.
[백준] 단지번호 붙이기 - BFS 단지번호붙이기 성공출처 시간 제한메모리 제한제출정답맞은 사람정답 비율 1 초 128 MB 93709 38989 24584 39.632% 문제 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여기서 연결되었다는 것은 어떤 집이 좌우, 혹은 아래위로 다른 집이 있는 경우를 말한다. 대각선상에 집이 있는 경우는 연결된 것이 아니다. 는 을 단지별로 번호를 붙인 것이다. 지도를 입력하여 단지수를 출력하고, 각 단지에 속하는 집의 수를 오름차순으로 정렬하여 출력하는 프로그램을 작성하시오. 입력 첫 번째 줄에는 지도의 크기 N(정사각형이므로 가로와 세로의 크기는 같으며 5≤N≤2.. 2021. 9. 20.
[프로그래머스] 전화번호 목록 https://programmers.co.kr/learn/courses/30/lessons/42577#qna 코딩테스트 연습 - 전화번호 목록 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조 programmers.co.kr 전화번호 목록 문제 설명 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조대 : 119 박준영 : 97 674 223 지영석 : 11 9552 4421 전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 so.. 2021. 9. 19.