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. *,/ => 두번째 피연..
https://www.acmicpc.net/problem/1918 1918번: 후위 표기식 첫째 줄에 중위 표기식이 주어진다. 단 이 수식의 피연산자는 A~Z의 문자로 이루어지며 수식에서 한 번씩만 등장한다. 그리고 -A+B와 같이 -가 가장 앞에 오거나 AB와 같이 *가 생략되는 등의 수식은 주어지지 않는다. 표기식은 알파벳 대문자와 +, -, *, /, (, )로만 이루어져 있으며, 길이는 100을 넘지 않는다. www.acmicpc.net 구현 예시들 // A*(B+C) >> ABC+* // (A+(B*C))-(D/E) >> ABC*+DE/- // A+B*C+D >> ABC*+D+ // A*(B+C) = ABC+* // A*B+C = AB*C+ // A*B*C*D = AB*C*D* // (A*B)*..
https://www.acmicpc.net/problem/2504 2504번: 괄호의 값 4개의 기호 ‘(’, ‘)’, ‘[’, ‘]’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과 같이 정의된다. 한 쌍의 괄호로만 이루어진 ‘()’와 ‘[]’는 올바른 괄호열이다. 만일 X가 올바른 괄호열이면 ‘(X)’이나 ‘[X]’도 모두 올바른 괄호열이 된다. X와 Y 모두 올바른 괄호열이라면 이들을 결합한 XY도 올바른 괄호열이 된다. 예를 들어 ‘(()[[]])’나 ‘(())[][]’ 는 올바른 괄호열이지만 ‘([)]’ 나 ‘(()( www.acmicpc.net 구현 반례들 // [[]) > 0 // [(]) > 0 // (()([())]) > 0 // ())[] > 0 // ([[]]()) > 2..
https://www.acmicpc.net/problem/9012 9012번: 괄호 문제 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 부른다. 한 쌍의 괄호 기호로 된 “( )” 문자열은 기본 VPS 이라고 부른다. 만일 x 가 VPS 라면 이것을 하나의 괄호에 넣은 새로운 문자열 “(x)”도 VPS 가 된다. 그리고 두 VPS x 와 y를 접합(conc www.acmicpc.net 구현 중 만난 문제/해결 if(sum0인 상황을 생각못함. i와 j를 혼동해서 썼음. 구현 package boj; import java.io..
https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 않은 명령이 주어지는 경우는 없다. www.acmicpc.net 어떻게 풀까? stack알고리즘을 사용한다. 구현 중 만난 문제/해결 제출하기전 stack.size()>0 부분을 stack.size()>1로 작성해서 원하던 결과가 안나왔다. 빠르게 고칠수있었지만 처음부터 생각하고 짜도록하자 구현 package boj; import java.io.BufferedReader; import java.io.IOEx..
- Total
- Today
- Yesterday
- Jenkins
- Docker
- 언제까지할수있을까
- leetcode 69
- elastic ip
- ngrok
- leetcode 278
- 2447
- java
- xmlpullparserexceptioin
- 백준
- leetcode 35
- 릿코드
- LeetCode
- binary search
- 도커
- leetcode 167
- leetcode 349
- 뒤늦은 1년 후기
- 별찍기-10
- 티스토리코드작성
- Github
- webhook
- config.xml
- binarySearch
- Leetcode717
- 1491
- leetcode 204
- leetcode 350
- gradle빌드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |