분류 전체보기45 [BOJ] [JAVA] 20920번 영단어 암기는 괴로워 20920번: 영단어 암기는 괴로워 첫째 줄에는 영어 지문에 나오는 단어의 개수 $N$과 외울 단어의 길이 기준이 되는 $M$이 공백으로 구분되어 주어진다. ($1 \leq N \leq 100\,000$, $1 \leq M \leq 10$) 둘째 줄부터 $N+1$번째 줄까지 외울 단 www.acmicpc.net 어려워서 못풀고 다른 분의 풀이를 보고 다시 공부했다. 이전에 했던 sort를 Comparator을 사용해서 정렬 규칙을 바꾸는 문제이다. 답을 보고 스윽 다시 적으면 쉽게 이해가 되는데 막상 혼자 풀려고 하면 생각이 잘 안나는 것 같다. import java.io.*; import java.util.*; public class Main { public static void main(String[.. 2024. 1. 14. [BOJ] [JAVA] 1016번 제곱 ㄴㄴ 수 1016번: 제곱 ㄴㄴ 수 어떤 정수 X가 1보다 큰 제곱수로 나누어 떨어지지 않을 때, 그 수를 제곱ㄴㄴ수라고 한다. 제곱수는 정수의 제곱이다. min과 max가 주어지면, min보다 크거나 같고, max보다 작거나 같은 제곱ㄴㄴ수 www.acmicpc.net 한 달 전에 풀었지만 소수 문제를 몇 번 더 풀어본 후 다시 풀어봤다.(근데 내가 예전에 푼 풀이랑 기가 막히게 똑같다 ㅋㅋ) 이 문제의 핵심은 for문에서 라고 생각한다. start보다 큰 첫 i * i배수를 아래와 같이 잡았다. 나누기를 통해 몫을 구하고 다시 (i * i)를 곱해서 (i * i)의 배수를 만들었다. 이렇게 된다면 a는 항상 start보다 작거나 같은 (i * i)의 배수일 것이다. 만약 a < start라면 a += i * .. 2024. 1. 11. [BOJ] [JAVA] 11866번 요세푸스 문제0 Queue 큐 자료구조를 처음 배웠다. 이번 문제를 풀면서 큐를 이렇게 쓸 수 있구나 하는게 신기해서 적어본다. https://www.acmicpc.net/problem/11866 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net 문제에서는 원순열을 만들고, 원순열의 원소를 규칙대로 제거하면서, 제거된 원소 순서대로 출력하라고 한다. 이 원순열을 큐 자료 구조로 구현할 수 있다. 큐의 가장 앞 원소를 저장하고, 제거한 후 저장된 원소를 큐의 가장 뒤에 집어넣음으로 원순열이 구현된다.(신기하다 ㅋㅋ) import java.util.*; public class Main { public static v.. 2024. 1. 10. [BOJ] [JAVA] 9012번 괄호 드디어 stack 자료 구조를 배우고 이 문제를 다시 풀었다! 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 입력된 String의 i번째 character가 ')' 인 경우 : stack에 아무것도 남아있지 않는 상태인 경우 곧바로 VPS가 아님을 알 수 있다. (만약 stack에 무언가가 남아있다면 그것은 반드시 '('일 것이다!) 입력된 String의 i번째 character가 '(' 인 경우 : 다음에 오는 것이 ')'라면 ()가 만나기 때문에 pop되어 사라진다. 반대로.. 2024. 1. 7. 이전 1 ··· 5 6 7 8 9 10 11 12 다음