https://www.acmicpc.net/problem/2447 2447번: 별 찍기 - 10 첫째 줄에 N이 주어진다. N은 항상 3의 제곱꼴인 수이다. (3, 9, 27, ...) (N=3k, 1 ≤ k < 8) www.acmicpc.net 어떻게 풀까? 위의 이미지에서 검은색 동그라미를 친부분이 3을 입력했을 때 나오는 그림이다. 9를 입력했을때는 빨간선으로 나눠진 아홉칸 중 비어있는 가운데가 아닌 한칸이 출력된다. 이미지를 보고 대충의 규칙이 있다는 것은 알 수 있지만 코드로는 어떻게 나타낼 수 있을까? * * * * * * * * 항상 위의 표와 같이, 크게 아홉칸으로 나눌 수 있으며 가운데는 비어있다는 것을 사진을 통해 확인했다. 이는 3x3인 배열에서는 [1][1]만 비어있는 것이라고 볼 ..
https://www.acmicpc.net/problem/1015 1015번: 수열 정렬 P[0], P[1], ...., P[N-1]은 0부터 N-1까지(포함)의 수를 한 번씩 포함하고 있는 수열이다. 수열 P를 길이가 N인 배열 A에 적용하면 길이가 N인 배열 B가 된다. 적용하는 방법은 B[P[i]] = A[i]이다. 배열 A가 주어졌을 때, 수열 P를 적용한 결과가 비내림차순이 되는 수열을 찾는 프로그램을 작성하시오. 비내림차순이란, 각각의 원소가 바로 앞에 있는 원소보다 크거나 같을 경우를 말한다. 만약 그러한 수열이 여러개라면 사전순 www.acmicpc.net 어떻게 풀까? 입력배열을 오름차순으로 생각했을때의 순서가 오름차순의 값이다. 입력배열을 정렬하되 인덱스를 그대로 가지고있어야 출력배열의..
https://www.acmicpc.net/problem/1074 1074번: Z 한수는 2차원 배열 (항상 2^N * 2^N 크기이다)을 Z모양으로 탐색하려고 한다. 예를 들어, 2*2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. 만약, 2차원 배열의 크기가 2^N * 2^N라서 왼쪽 위에 있는 칸이 하나가 아니라면, 배열을 4등분 한 후에 (크기가 같은 2^(N-1)로) 재귀적으로 순서대로 방문한다. 다음 예는 2^2 * 2^2 크기의 배열을 방문한 순서이다. N이 주어졌을 때, (r, www.acmicpc.net 어떻게 풀까? "배열을 4등분 한 후에 재귀적으로 순서대로 방문한다."는 부분을 보고 재귀함수를 통해 문제를 풀자고 생각했다. 아래와 같이 1..
https://www.acmicpc.net/problem/11729 11729번: 하노이 탑 이동 순서 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 옮기려 한다. 한 번에 한 개의 원판만을 다른 탑으로 옮길 수 있다. 쌓아 놓은 원판은 항상 위의 것이 아래의 것보다 작아야 한다. 이 작업을 수행하는데 필요한 이동 순서를 출력하는 프로그램을 작성하라. 단, 이동 횟수는 최소가 되어야 한다. 아래 그림은 원판이 5 www.acmicpc.net 어떻게 풀까? n개의 판을 A -> C으로 이동시켜야 할 때 1. A에 있는 (n-1)개의 판을 B로 이동 2. A에 있..
https://www.acmicpc.net/problem/1436 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타워즈를 만들 때, 스타워즈 1, 스타워즈 2, 스타워즈 3, 스타워즈 4, 스타워즈 5, 스타워즈 6과 같이 이름을 지었고, 피터 잭슨은 반지의 제왕을 만들 때, 반지의 제왕 1, 반지의 제왕 2, 반지의 제왕 3과 같이 영화 제목을 지었다. 하지만 숌은 자신이 조 www.acmicpc.net 어떻게 풀까? 처음엔 단순히 뒤에 666을 붙이고 앞자리만 증가하는 식으로 생각했다. 16666이전에 16660이 있을 수 있다는 생..
https://www.acmicpc.net/problem/1107 1107번: 리모컨 첫째 줄에 수빈이가 이동하려고 하는 채널 N (0 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 고장난 버튼의 개수 M (0 ≤ M ≤ 10)이 주어진다. 고장난 버튼이 있는 경우에는 셋째 줄에는 고장난 버튼이 주어지며, 같은 버튼이 여러 번 주어지는 경우는 없다. www.acmicpc.net 어떻게 풀까? 1. 100에서 +,-로 이동 2. 해당 숫자로 바로가기 3. 가까운 숫자로 가서 이동 이렇게 세가지 방법이 있다고 생각하며 시작했다. 1번 같은 경우 단순히 목표값-100 으로 하면 -가 나올수도 있기 때문에 Math.abs함수를 사용해 정의를 내릴 수 있다. 2번 같은 경우 String.valueOf(목표값..
https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 구현 중 만난 문제/해결 st.peek() == arr.peek()등 Integer 객체끼리의 비교를 ==를 사용해서 비교하려고 했지만 두 객체의 주소값이 같은지를 보는 것이었기 때문에 틀렸다. 결국 intValue() 를 사용해 통과할수있었다. 구현 ArrayList에는 결과값을 집어 넣을 수 있도록 하고, Sta..
https://www.acmicpc.net/problem/1935 1935번: 후위 표기식2 첫째 줄에 피연산자의 개수(1 ≤ N ≤ 26) 가 주어진다. 그리고 둘째 줄에는 후위 표기식이 주어진다. (여기서 피연산자는 A~Z의 영대문자이며, A부터 순서대로 N개의 영대문자만이 사용되며, 길이는 100을 넘지 않는다) 그리고 셋째 줄부터 N+2번째 줄까지는 각 피연산자에 대응하는 값이 주어진다. (3번째 줄에는 A에 해당하는 값, 4번째 줄에는 B에 해당하는값 , 5번째 줄에는 C ...이 주어진다, 그리고 피연산자에 대응 하는 값은 정수이다) www.acmicpc.net 어떻게 풀까? 뒤에서 하나씩 빼서 연결리스트로 구현해보자 1. +,- => 두번째 피연산자 앞으로 이동 2. *,/ => 두번째 피연..
- Total
- Today
- Yesterday
- gradle빌드
- xmlpullparserexceptioin
- leetcode 167
- LeetCode
- 릿코드
- Leetcode717
- leetcode 69
- binarySearch
- 1491
- leetcode 278
- 별찍기-10
- leetcode 349
- Github
- leetcode 350
- 언제까지할수있을까
- Docker
- 백준
- config.xml
- elastic ip
- webhook
- 티스토리코드작성
- leetcode 204
- 2447
- 도커
- 뒤늦은 1년 후기
- binary search
- Jenkins
- leetcode 35
- ngrok
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |