분류 전체보기
[백준 - 1699번] 제곱수의 합 - 자바(JAVA) 정리 & 1일 1 DP - 5일차
[백준 - 1699번] 제곱수의 합 - 자바(JAVA) 정리 & 1일 1 DP - 5일차
2020.02.24안녕하세요 이번에 풀어볼 문제는 제곱수의 합입니다. https://www.acmicpc.net/problem/1699 1699번: 제곱수의 합 어떤 자연수 N은 그보다 작거나 같은 제곱수들의 합으로 나타낼 수 있다. 예를 들어 11=32+12+12(3개 항)이다. 이런 표현방법은 여러 가지가 될 수 있는데, 11의 경우 11=22+22+12+12+12(5개 항)도 가능하다. 이 경우, 수학자 숌크라테스는 “11은 3개 항의 제곱수 합으로 표현할 수 있다.”라고 말한다. 또한 11은 그보다 적은 항의 제곱수 합으로 표현할 수 없으므로, 11을 그 합으로써 표현할 수 있는 제곱수 항의 최소 개수는 www.acmicpc.net 어떤식으로 풀었었나? 처음에 문제를 풀었을때는 단순하게 N-1의 값 +1 이라고 생..
[백준 - 11727번] 2*N 타일링 2 - 자바(JAVA) 정리 & 1일 1DP - 4 일차
[백준 - 11727번] 2*N 타일링 2 - 자바(JAVA) 정리 & 1일 1DP - 4 일차
2020.02.22안녕하세요. 이번에 풀어볼 문제는 2N 타일링 2입니다. 다이나믹 프로그래밍 문제입니다. 이문제는 참고해서 풀었기 때문에, 코드만 적어 놓도록 하겠습니다. 차후에 다시 한번 더 풀어보고 해설을 올리겠습니다. /** 2020. 2. 22. 오후 8:03:38 * @author ventulus95 */ package codeBaekJoon; import java.io.BufferedReader; import java.io.InputStreamReader; public class No11727_2nTitle { static int cache[] = new int [1001]; public static void main(String[] args) throws Exception { BufferedReader br..
[백준 - 11052번] 카드구매하기 - 자바(JAVA) 정리 및 해설 & 1일 1DP - 3일차
[백준 - 11052번] 카드구매하기 - 자바(JAVA) 정리 및 해설 & 1일 1DP - 3일차
2020.02.19안녕하세요 오늘 풀어볼 문제는 카드 구매하기입니다. Dynamic Programming 문제를 풀어보도록 하겠습니다. https://www.acmicpc.net/problem/11052 11052번: 카드 구매하기 첫째 줄에 민규가 구매하려고 하는 카드의 개수 N이 주어진다. (1 ≤ N ≤ 1,000) 둘째 줄에는 Pi가 P1부터 PN까지 순서대로 주어진다. (1 ≤ Pi ≤ 10,000) www.acmicpc.net 문제 개요 이문제에서 가장 중요한 포인트는 "금액의 최대값"을 맞춰줘야하기때문에 각 N개의 카드를 샀을의 금액이 최대가 되는 경우를 찾아야합니다. 즉, 각 경우마다의 카드를 살 수 있는 최대 금액을 찾아서 그 값을 저장을 해야합니다. N 만큼의 카드를 사야한다면, N = N-1개를 샀을때..
[백준 - 1003번] 피보나치 함수 - 자바(JAVA) 정리 및 해설 & 1일 1DP 2일차
[백준 - 1003번] 피보나치 함수 - 자바(JAVA) 정리 및 해설 & 1일 1DP 2일차
2020.02.18오늘 풀어볼 문제는 피보나치 함수입니다. 역시 Dynamic Programming https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 일단 이문제는 특이하게도 알고리즘을 보여주고 시작합니다. 물론 이 알고리즘만 보고 풀수 있는 문제는 아닙니다. ㅋㅋ 어떤 식으로 접근 했는지? 일단 제가 접근했었던 방식은 DP = Top-Down 이렇게 생각하다보니까 탑다운 방식으로 골라서 풀었는데, 그렇게 썩 좋은 방법은 아닌것 같습니다. 일단 첫번째로는 0을가지는 경우와 1를 가지는 경우를 분리해서 했습니다. 두가지 인자를 한 함수에서 동시에 굴리는 방법이 ..
[백준 - 1010번] 다리 놓기 - 자바(JAVA) 정리 및 해설 & 1일 1DP - 1일차
[백준 - 1010번] 다리 놓기 - 자바(JAVA) 정리 및 해설 & 1일 1DP - 1일차
2020.02.18안녕하세요. 오늘 풀어볼문제는 백준 다리 놓기입니다. 이 문제는 다이나믹 프로그래밍 혹은 조합으로 문제를 푸는 문제입니다. https://www.acmicpc.net/problem/1010 1010번: 다리 놓기 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다. www.acmicpc.net 일단 이문제에서 결국 포인트로 잡아야하는 부분은 얼만큼 최대한 많은 여러가지의 경우의 수를 체크할 수 있냐라는 포인트입니다. 예시를 들어서 설명해보겠습니다. 한점에서 3점으로 만들 수 있는 경우의 수는 3가지입니다. 근데 저희가 문제가 되는 것은 N개의 점일때 M개의 점을 따..
1일 1DP를 시작해보겠습니다.
1일 1DP를 시작해보겠습니다.
2020.02.18최근들어서 알고리즘 공부를 좀 멀리한 경향도 있고, 다시 어느정도의 감을 잡기위해서는 DP 문제의 사고력이 필요하다고 느꼈습니다. 실제로 여러 코딩테스트를 준비하기에는 DP문제의 난이도가 적당하다고 생각했습니다. DP문제들을 빠르게 풀어가면서, 하루에 하나씩 DP문제를 풀어 보는 시간을 가지도록 하겠습니다. 물론 완벽하게 1일 1DP를 지킬 수 있을지는 조금의 의문이 드는 건 사실이지만 최대한 노력해서 많은 문제를 풀어보고 싶네요.
[Spring boot] 공공데이터 포털 service key is not registered error 해결 방안
[Spring boot] 공공데이터 포털 service key is not registered error 해결 방안
2020.02.11최근 공공데이터 포털에서 Bus앱을 만들기위해서 API키값을 불러와야하는 상황이 있었다 . 현재 개발중인 프로젝트 Spring boot로 계속적으로 API를 읽고 Parsing하기에 편한 내부 함수를 RestTemplate를 활용해서 그 Json값을 바로 파싱 받으려했었다. 문제는 service key is not registered error 가 지속적으로 발생했다는 점이다. 나는 이 오류가 도대체 왜? 발생하는지 정확한 이유를 알 수가 없어서, 분명히 String값에서 바뀔리는 없다고 문제점을 엄한 곳에서 찾기 시작했는데... 일단 문제를 재대로 파악해보자 실제로 Data.or.kr를 가서 확인해보면 대부분 Q&A 관련 사이트나 혹은 service key is not registered error라는..
리다이렉션을 처리하는 여러가지 방식
리다이렉션을 처리하는 여러가지 방식
2020.01.08[프로젝트/개인프로젝트] - User Agent를 통한 각 OS별 마켓으로 옮겨주는 리다이렉트 페이지 만들기 저번 글을 작성하다가 한가지 의문점이 들었는데, 일단 내가하는 리다이렉션의 방법은 헤더에 Location을 넣어서 바로 처리해주는 방식이다. 이외에도 처리하는 방식이 여러가지인 것으로 알고 있어서 정리 겸 리다이렉션이 어떤 것인가를 체크해보도록 한다. 리다이렉션의 방식은...? 일단 리다이렉션 자체가 2가지 방법으로 나뉘어져있다. 301 리다이렉트와 302 리다이렉트 방식이 존재. 301 방식은 영구적 옮김을 뜻하고 그 안의 정보같은 것 즉, Referer를 다 사라지게 하는 효과가 있다. 즉, 내가 어디서 왔는지를 잃어버리게 하는 효과가 있다는 뜻이다. 302 방식은 일시적 옮김을 뜻하고, 스크..
User Agent를 통한 각 OS별 마켓으로 옮겨주는 리다이렉트 페이지 만들기
User Agent를 통한 각 OS별 마켓으로 옮겨주는 리다이렉트 페이지 만들기
2020.01.03최근 학교에서 인턴을 신청할 일이 생겼고, 마침 친구의 스타트업에서 일할 기회가 생겨서 인턴으로 일하는 중이다. 지금 내가 가지고 있는 기술 스택과는 좀 거리가 있지만, 어쨌든 웹이라는 주제로 일을 할 수 있기 때문에 일을 신청을 했었다. 그러다 보니 자연스럽게 여러가지 회사에서 원하는 요구사항들을 만들어 낼 기회가 생겨서 블로그에 올려본다 왜 이걸 하게 되었는가? 이 스타트업은 앱 자체가 안드로이드와 IOS 두개로 나눠져 있어서 그것을 QR 코드로 만들어내려면 2개가 필요했는데 솔직히 요즘에 그런 QR코드를 사용하는 경우는 드물다. 즉, 한 QR코드에 두개의 마켓을 담을 수 있는 그런 QR코드가 필요했다. 문제는 시중에서는 그런 코드 제작을 해주는 사이트들은 애초에 없기도 했거니와 심지어 만들어주는 사..
2019년 회고 - "여러 성공들을 옆에서 지켜본 한 해"
2019년 회고 - "여러 성공들을 옆에서 지켜본 한 해"
2019.12.22안녕하세요. 올해도 어느덧 12월 22일까지 후다닥 지나갔네요.2018년도에는 백준 200문제를 끝내는걸 목표를 끝냈는데 올해는 이것저것 많은 행사들을 참여하고 이것저것 많은 것들을 했었던 한해였기도 했습니다.꾸준히 성장해가고 있다는 것도 알겸, 제가 올해 얼마나 알차게 살아왔는가를 다시끔 되짚는 시간이 되었으면 좋겠습니다. 아마 지속적으로 떠오르는대로 더 추가가 될 수도 있습니다. 올해를 정리해보자면 한줄로 정의해보자면...." 여러 성공들을 옆에서 지켜본 한 해" 라고 정의 하고 싶습니다. 왜냐하면 올해는 정말 많은 도전을 했었고 정말 많이 떨어졌고, 정말 많은 실패를 겪었던 한해었던 것 같습니다. 그 외에도 나쁘지 않은 결과물들을 좀 많이 만들었던 한해 였던 것 같습니다. 1. 많은 실패들.올해에는..
자바를 더 활용성있게 써보자. - Foreach,삼항 연산자, enum
자바를 더 활용성있게 써보자. - Foreach,삼항 연산자, enum
2019.12.08최근에 팀프로젝트나 헤커톤을 나가면서 열심히 자바를 활용할 기회가 많았는데, 간단한 식을 변수명이 길어지면서 코드가 난잡해지기도 하고 좀 더 가독성이 좋거나 혹은 좀 더 중복을 제거할 방법이 없을까 고민하면서 이것저것 많이 찾아냈다. 그래서 정리겸사 적어본다. 어떤 기술들이 있으려나..? 내가 오늘 정리할 것들은 총 4가지 정도로 1. Foreach 2. 삼항 연산자 3. Enum 4. lambda이다. 1. Foreach Foreach문은 for문의 여러가지 조건들을 축약해서 줄일 수있다는게 장점입니다. 물론 세부적인 조절이 안되는 게 단점. for(int i =0; ib){ k = 1; } else{ k=2; } /// 삼항 연산자로 바꾸면 이렇게 된다. int k (a>b) ? 1:2; //만족하면..
docker를 통한 Oracle 11g 실행 명령어들
docker를 통한 Oracle 11g 실행 명령어들
2019.11.20https://coding-start.tistory.com/44 Docker - docker oracle11g 설치 mac os 환경에서 docker를 이용한 oracle 11g 설치 우선 진행하기 전에 자신의 os에 맞는 docker를 다운로드 해줍니다. 1)docker pull wnameless/oracle-xe-11g =>oracle 11g 도커이미지 다운로드, 여기서 이미지.. coding-start.tistory.com 자꾸 컴퓨터를 끄거나 다시 키는 순간마다 docker가 재실행되지 않고, 내가 직접 입력해야하는 경우가 빈번한데 자꾸 명령어를 까먹어서 참고용으로 열어둔다.