본문 바로가기

문자열80

[자바] 백준 5524 - 입실 관리 (java) 문제 : boj5524 필요 알고리즘 개념 문자열 문자열 처리 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 단순히 입력된 문자열을 소문자로만 변경해서 출력해주면 된다. 자바의 경우 toLowerCase() 라는 함수가 제공되므로 더 쉽게 통과할 수 있다. 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; public class.. 2022. 11. 2.
[자바] 백준 10822 - 더하기 (java) 문제 : boj10822 필요 알고리즘 개념 문자열, 파싱, 구현 문자열을 일정한 규칙대로 파싱해서 원하는 데이터를 얻을 수 있다면 풀 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 "10,20,30,50,100" 형태로 ','를 기준으로 작성되어있는 각 숫자들을 파싱해서 뽑아낼 수 있으면 모두 더해버리면 된다. 자바의 경우 String에 대해 split 함수로 파싱해도 되고, StringTokenizer로 파싱해.. 2022. 10. 28.
[자바] 백준 12400 - Speaking in Tongues (Small) (java) 문제 : boj12400 필요 알고리즘 개념 애드 혹(ad hoc) 정형화된 방식이 존재하지 않고 이 문제만의 아이디어를 생각해내야 한다. 구현, 문자열 풀이를 일단 생각해냈다면 그 이후론 요 태그이긴 한데, 그냥 생각난걸 구현할 수 있냐는 의미이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 문제 지문에서 제시된건 'a' -> 'y', 'o' -> 'e', 'z' -> 'q' 이다. 여기서 알 수 있는 점은 변경되는 문.. 2022. 10. 24.
[자바] 백준 25757 - 임스와 함께하는 미니게임 (java) 문제 : boj25757 필요 알고리즘 개념 해시를 사용한 집합과 맵, 문자열 문자열을 사용해 해싱하는 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 우선 Y, F, O에 대해 임스는 무조건 포함되어야 하니 각각 추가로 1, 2, 3명의 인원수가 필요하다. Y에 따른 추가 인원수를 p라고 해보자. 이제 알아야 하는건 '최대 몇 번이나 임스와 함께 게임을 플레이할 수 있는지'와 '임스는 한 번 같이 플레이한 사람과는.. 2022. 10. 24.
[자바] 백준 9324 - 진짜 메시지 (java) 문제 : boj9324 필요 알고리즘 개념 문자열, 파싱, 구현 입력으로 주어진 문자열을 파싱하면서 문제에서 제시된대로 구현해주면 된다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 문제에서 제시된걸 구현하기 위해 필요한 항목은 다음과 같다. 1. 현재 문자열의 i번째 문자를 보고있을 때, 현재까지 i번째 문자와 동일한 문자가 이전에 몇 번 나왔는지 알 수 있어야 한다. -> 대문자만 입력으로 들어오므로, A부터 Z까지 2.. 2022. 9. 29.
[자바, JS] 프로그래머스 - 영어 끝말잇기 (Lv2, Java, JavaScript) 문제 : Programmers-영어 끝말잇기 문제 출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges 필요 알고리즘 개념 Set 해시셋을 사용해 이전에 나온 문자열이 중복으로 나왔는지 확인할 수 있어야 한다. 문자열, 파싱 문자열의 첫 문자와 마지막 문자를 확인할 수 있어야 한다. 문제에서 찾고자 하는 종료 조건은 아래의 두 가지 이다. 1. 이전에 나온 단어가 다시 나오는지 2. 직전에 나온 단어의 마지막 문자(character)가 이번에 보고 있는 단어의 첫번째 문자와 동일한지 '1'의 경우엔 Set을 사용해 중복 체크를 할 수 있다. 자바의 경우엔 HashSet을 사용하면 되고, js의 경우엔 Set을 사용해주면 된다. '2'의 경우엔.. 2022. 9. 23.
[자바] 백준 1706 - 크로스워드 (java) 문제 : boj1706 필요 알고리즘 개념 문자열, 파싱 문자열을 파싱해서 원하는 형태로 사용할 수 있어야 한다. 구현 문제에서 제시된대로 구현만 해주면 된다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 우선 문제를 잘 파악해보자. 가로나 세로로 1개 초과로 연속된 문자열을 모두 뽑아낼 수 있다면, 그 중 가장 사전순으로 앞서는 문자를 출력해주면 된다. 위에서 "good" "an" "messy" ... "sit" "byt.. 2022. 9. 21.
[자바] 백준 21508 - Список школ (java) 문제 : boj21508 타 언어 문제이므로 한글로 문제의 핵심 조건만 작성해본다. 1. 첫 줄에 이하 몇줄이 입력으로 들어올지에 대한 N이 주어진다. 2. 입력은 공백, 영어 대소문자, 숫자로 이루어져 있는데, 이 중 숫자만 뽑아낸게 학교 번호이다. 즉, "A41B"와 "41 AB"는 동일한 학교를 나타낸다. 3. 학교 번호 기준으로 각 학교가 몇 명 참가했는지 확인해서, 1명이상 5명이하가 참여한 학교의 학교 번호를 출력한다. 순서는 상관없다. 필요 알고리즘 개념 해시를 사용한 집합과 맵 해시가 필요하다. 숫자로 처리되므로 그냥 배열같은걸로 처리해도 되지 않나 싶겠지만, 문제 어디에도 숫자가 몇 이하임이 제시되지 않았다. 따라서 문자열 길이가 100까지 가능하므로 100자리 숫자까지 판단해야 된다고 .. 2022. 9. 17.
[자바] 백준 6566 - 애너그램 그룹 (java) 문제 : boj6566 필요 알고리즘 개념 해시를 사용한 집합과 맵 해시를 잘 이해하고 있어야 풀 수 있는 문제이다. 정렬 정렬 역시 잘 이해하고 있어야 풀 수 있는 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 상당히 복잡한 문제이다. 구현도 복잡하고 실수할 여지도 많으니 주의해서 풀어야 한다. 차근차근 로직을 정리하면서 구현을 해야 실수를 줄이면서 구현할 수 있다. 이정도 구현을 문제없이 짤 수 있는 정도면 사.. 2022. 9. 17.
[자바] 백준 1316 - 그룹 단어 체커 (java) 문제 : boj1316 필요 알고리즘 개념 구현, 문자열 문자열의 각 character를 어느정도 다룰 줄 알아야 하는 구현문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 간단히 생각해보려면 연속된 동일한 문자를 전부 하나로 줄인다고 생각해보자. 예를들어서 aaabbbbbbcccccddddaaaaaaa 의 경우 연속된 동일한 문자는 하나로 치면, abcda 라고 간단하게 생각해볼 수 있다. 위와 같이 볼 수만 있다면.. 2022. 9. 13.