Tag
#백준
19개의 글이 있습니다.
-
[백준] 10942 팰린드롬? - JAVA
명우는 홍준이와 함께 팰린드롬 놀이를 해보려고 한다. 먼저, 홍준이는 자연수 N개를 칠판에 적는다. 그 다음, 명우에게 질문을 총 M번 한다. 각 질문은 두 정수 S와 E(1 ≤ S ≤ E ≤ N)로 나타낼 수 있으며, S번째 수부터 E번째 까지 수가 팰린드롬을 이루는지를
-
[백준] 4153 직각삼각형 - JAVA
기본기를 다지기 위해 쉬운 문제부터 다시 시작하고 있다. 이번 문제는 단순한 직각삼각형 문제 내가 처음 짠 위 코드에 개선사항이 세개가 있었는데 list 지역변수로 사용하기, 정렬보다 조건 검사를 먼저 하기, 튜플 사용하기이다. 개선한 코드는 다음과
-
[백준] 9663 N-Queen - JAVA
백트래킹 문제로 굉장히 유명하다는 N-Queen 문제이다. 다른 거는 어떻게 할지 감이 잡혔는데 대각선 검증을 어떻게 해야 할지가 고민이었는데 찾아보니 기울기 비교를 통해 검증하는 방법을 많이 사용한다고 하더라. 절대값을 사용해 순회를 돌면서 기울기가 같으면 서로 공격할 수
-
[백준] 1967 트리의 지름 - JAVA
[백준] 1967 트리의 지름 -
-
[백준] 1753 최단경로 - JAVA
각 출발 노드부터 각 노드까지의 최단 경로를 찾는 다익스트라 알고리즘
-
[백준] 13549 숨바꼭질 3 - JAVA
이전에 풀었던 순간이동 할 때 이동 시간이 1이었던 숨바꼭질 1에서 순간이동 시간이 0 으로만 바뀐 문제였다. 그래서 그냥 이동할 때마다 1 더해주던건 조건문으로 나눠서 순간이동 할때는 지금 시간 그대로 해주면 되는거 아니야? 라고 생각하고 풀었는데 그게 아니었다. 최단
-
[백준] 11660 구간 합 구하기 5 - JAVA
이번 문제는 dp, 누적합 문제이다. 이렇게 입력이 들어왔을 때 이런 누적합 배열로 저장해야 한다. [2][2]를 예시로 들면1 + 2 + 4 + 5 = 12가 되고[3][2] 는 1 + 2 + 4 + 5 + 7 + 8 = 27이 된다. 최종 코드는 아래와
-
[백준] 15663 N과 M(9) - JAVA
N과 M 시리즈로 중복되는 이번엔 기존에 출력됐던 배열을 출력 안되게 하는 문제이다. main 부분은 다른 문제와 같이 BufferedReader로 입력받고 초기화해준 후 정렬했다. 다음으로 dfs depth == M 즉 한 줄을 다 찾았으면 출력하고 종료한다. 그렇지 않으면
-
[백준] 1697 숨바꼭질 - JAVA
이번 문제는 오랜만에 1차원 배열을 이용한 그래프 순회 문제이다. 처음 이 문제를 봤을 때는 그래프 순회 문제가 아닌 수식 문제인줄 알았는데 수식보다 bfs로 푸는게 나을 것 같다. 문제가 짧은 만큼 알고리즘은 단순하다. queue를 활용한 bfs 탐색을 진행한다. 1.
-
[백준] 1012 유기농 배추 - JAVA
이번에도 상당히 전형적인 문제이다. 나는 dfs를 사용했고 특별히 어려운 부분은 없었다. 더 어려운 그래프 문제로 넘어가도
-
백준 10808(파이썬/python)
알파벳 소문자로만 이루어진 단어 S가 주어진다. 각 알파벳이 단어에 몇 개가 포함되어 있는지 구하는 프로그램을 작성하시오. 첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. 단어에 포함되어 있는 a의 개수, b의 개수,
-
백준 1918(python/파이썬)
수식은 일반적으로 3가지 표기법으로 표현할 수 있다. 연산자가 피연산자 가운데 위치하는 중위 표기법(일반적으로 우리가 쓰는 방법이다), 연산자가 피연산자 앞에 위치하는 전위 표기법(prefix notation), 연산자가 피연산자 뒤에 위치하는 후위 표기법(postfix
-
백준 10799(파이썬/python)
여러 개의 쇠막대기를 레이저로 절단하려고 한다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자른다. 쇠막대기와 레이저의 배치는 다음 조건을 만족한다. 아래 그림은 위 조건을 만족하는 예를 보여준다. 수평으로
-
백준 17413(파이썬/python)
문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 태그는 '<'로 시작해서 '>'로 끝나는 길이가 3 이상인 부분 문자열이고, '<'와 '>' 사이에는 알파벳 소문자와 공백만 있다. 단어는 알파벳 소문자와
-
백준 10866(파이썬/python)
정수를 저장하는 덱(Deque)를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여덟 가지이다. 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는
-
백준 1158 (파이썬/python)
문제 요세푸스 문제는 다음과 같다. 1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이
-
백준 10845(파이썬/python)
정수를 저장하는 큐를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여섯 가지이다. 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다
-
백준 1406(파이썬/python)
한 줄로 된 간단한 에디터를 구현하려고 한다. 이 편집기는 영어 소문자만을 기록할 수 있는 편집기로, 최대 600,000글자까지 입력할 수 있다. 이 편집기에는 '커서'라는 것이 있는데, 커서는 문장의 맨 앞(첫 번째 문자의 왼쪽), 문장의 맨 뒤(마지막 문자의 오른쪽),
-
백준 9012(파이썬/Python)
괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 부른다. 한 쌍의 괄호 기호로 된 “( )”