일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 객체지향
- 이분 탐색
- 누적합
- BFS
- querydsl
- ES
- 코딩테스트
- 계산기 만들기
- 해시
- Java
- parametric search
- Baekjoon
- 백준
- til
- 알고리즘
- 브루트포스
- Generics
- Spring
- programmers
- File
- 완전탐색
- 프로그래머스
- SpringBoot
- 이분탐색
- Elasticsearch
- 구현
- 일정 관리
- 내일배움캠프
- Algorithm
- binary search
- Today
- Total
목록Algorithm/Baekjoon (18)
개발하는 햄팡이

풀이이 문제는 회전하는 인덱스(? 뭐라고 말해야될지 모르겠다..)를 구현할 수 있는지 확인하고 싶어하는 간단한 시뮬레이션 문제인 것 같다.그냥 내 생각이다. 입력받은 명령의 수 만큼 돌면서 빈칸일 경우 글자를 저장해주고,그 이후에는 해당 위치에 있는 글자와 입력받은 글자가 같은지 확인한다. 예시 입력 2번을 손그림으로 표현하면 이런 느낌.단순하게 생각하고 그냥 쭉 풀었는데 생각보다 이런저런 조건이 많아서 까다로웠다.처음 풀고 나서 엥 이렇게 쉽다고? 했는데(체감 브론즈5)바퀴를 시계방향으로 돌리면 문자는 뒤를 가르키게 되어있어서 출력할때에는 반대로 출력해야된다던가,문제 조건 중에 바퀴 안에 한 문자가 두번이상 등장하지 않는다던가...막 엄청 어려운 문제는 아니었으나 문제를 잘 읽는지 확인하려고 내는 문제..
https://www.acmicpc.net/problem/1730 오늘부터 문제는 올리지 않기로 했다!풀이처음에는 단순한 시뮬레이션 문제인 줄 알았는데 생각보다 복잡했다...처음 풀이는 현재 좌표에만 무늬를 새겨넣고 다음에 갈 곳엔 새기지 않았는데 그렇게 했더니 마지막 위치에 마지막 명령을 시행하지 않는 문제가 생겼다↓ 이전 풀이 방법 ↓더보기package S_1730;// 판화import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { private static int[][] d = {{-1, 0}, {1, 0}, {0, -1}, {0, 1}}; privat..
https://www.acmicpc.net/problem/3085문제상근이는 어렸을 적에 "봄보니 (Bomboni)" 게임을 즐겨했다.가장 처음에 N×N크기에 사탕을 채워 놓는다. 사탕의 색은 모두 같지 않을 수도 있다. 상근이는 사탕의 색이 다른 인접한 두 칸을 고른다. 그 다음 고른 칸에 들어있는 사탕을 서로 교환한다. 이제, 모두 같은 색으로 이루어져 있는 가장 긴 연속 부분(행 또는 열)을 고른 다음 그 사탕을 모두 먹는다.사탕이 채워진 상태가 주어졌을 때, 상근이가 먹을 수 있는 사탕의 최대 개수를 구하는 프로그램을 작성하시오.입력첫째 줄에 보드의 크기 N이 주어진다. (3 ≤ N ≤ 50)다음 N개 줄에는 보드에 채워져 있는 사탕의 색상이 주어진다. 빨간색은 C, 파란색은 P, 초록색은 Z, ..
문제어떤 수를 왼쪽부터 읽어도, 오른쪽부터 읽어도 같을 때 이 수를 회문인 수라고 한다. 예를 들어, 747은 회문인 수이다. 255도 회문인 수인데, 16진수로 표현하면 FF이기 때문이다. 양의 정수를 입력받았을 때, 이 수가 어떤 B진법 (2 ≤ B ≤ 64)으로 표현하면 회문이 되는 경우가 있는지 알려주는 프로그램을 작성하시오. B진법이란, 한 자리에서 수를 표현할 때 쓸 수 있는 수의 가짓수가 B라는 뜻이다. 예를 들어, 십진법에서 B는 10이다. 입력입력 데이터는 표준입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 테스트 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터는 64 이상 1,000,000 이하인 하나의 정수로 주어진다.출력출력은 표준출력..

문제10진법 수 N이 주어진다. 이 수를 B진법으로 바꿔 출력하는 프로그램을 작성하시오.10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 사용한다.A: 10, B: 11, ..., F: 15, ..., Y: 34, Z: 35입력첫째 줄에 N과 B가 주어진다. (2 ≤ B ≤ 36) N은 10억보다 작거나 같은 자연수이다.출력첫째 줄에 10진법 수 N을 B진법으로 출력한다.예제 입력 160466175 36예제 출력 1 복사ZZZZZ 풀이진법 변환의 전통적인 방법인 반복문로 계속 나누기....그 왜 어렸을 때 흔히 우리가 2진법으로 바꿀때 몫을 가지고 계속 나누는데 더이상 나누어 지지 않을때까지 하는 그 방법을 코드로 옮기는 방법으로 풀려고 한다. 최..

https://www.acmicpc.net/problem/10448문제삼각수 Tn(n ≥ 1)는 [그림]에서와 같이 기하학적으로 일정한 모양의 규칙을 갖는 점들의 모음으로 표현될 수 있다.[그림]자연수 n에 대해 n ≥ 1의 삼각수 Tn는 명백한 공식이 있다.Tn = 1 + 2 + 3 + ... + n = n(n+1)/21796년, 가우스는 모든 자연수가 최대 3개의 삼각수의 합으로 표현될 수 있다고 증명하였다. 예를 들어,4 = T1 + T25 = T1 + T1 + T26 = T2 + T2 or 6 = T310 = T1 + T2 + T3 or 10 = T4이 결과는 증명을 기념하기 위해 그의 다이어리에 “Eureka! num = Δ + Δ + Δ” 라고 적은것에서 유레카 이론으로 알려졌다. 꿍은 몇몇 ..
문제왕비를 피해 일곱 난쟁이들과 함께 평화롭게 생활하고 있던 백설공주에게 위기가 찾아왔다. 일과를 마치고 돌아온 난쟁이가 일곱 명이 아닌 아홉 명이었던 것이다.아홉 명의 난쟁이는 모두 자신이 "백설 공주와 일곱 난쟁이"의 주인공이라고 주장했다. 뛰어난 수학적 직관력을 가지고 있던 백설공주는, 다행스럽게도 일곱 난쟁이의 키의 합이 100이 됨을 기억해 냈다.아홉 난쟁이의 키가 주어졌을 때, 백설공주를 도와 일곱 난쟁이를 찾는 프로그램을 작성하시오.입력아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다.출력일곱 난쟁이의 키를 오름차순으로 출력한다. 일곱 난쟁이를 찾을 수 없는 경..

문제베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다.이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼프가 1850년에 증명했다.예를 들어, 10보다 크고, 20보다 작거나 같은 소수는 4개가 있다. (11, 13, 17, 19) 또, 14보다 크고, 28보다 작거나 같은 소수는 3개가 있다. (17,19, 23)자연수 n이 주어졌을 때, n보다 크고, 2n보다 작거나 같은 소수의 개수를 구하는 프로그램을 작성하시오. 시간 제한메모리 제한제출정답맞힌 사람정답 비율1 초256 MB106973417383339238.543% 입력입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 케이스는 n을 포함하는 한 줄..