[가고시마 여행] #6. 하쿠스이칸(백수관)
본 포스팅은 필자의 여행을 바탕으로 작성하였으나 주관적인 여행담이 아니며, 여행에 도움을 주고자 최대...
키자드에 등록된 총 291개의 포스트를 확인하실 수 있습니다.
본 포스팅은 필자의 여행을 바탕으로 작성하였으나 주관적인 여행담이 아니며, 여행에 도움을 주고자 최대...
activity_main.xml에서 가상 디바이스가 반영이 안되는 경우. 이렇게 수정하면 된다. API 버전을 낮추는...
%8x : 8자리로 출력하되, 공백으로 공간을 채운다. %.8x : 8자리 중 공백에 해당하는 자리는 0으로 패딩하...
char *b="Hi"는 포인터이므로 값의 변경이 불가능하다. sizeof(b)의 경우, 주소값을 저장하는 포인터이므...
본 포스팅은 필자의 여행을 바탕으로 작성하였으나 주관적인 여행담이 아니며, 여행에 도움을 주고자 최대...
본 포스팅은 필자의 여행을 바탕으로 작성하였으나 주관적인 여행담이 아니며, 여행에 도움을 주고자 최대...
1. Matplotlib 설치커맨드 라인에서 "pip install matplotlib"를 작성하여 라이브러리 설치를 ...
스택은 FILO(First in Last out) 구조의 자료형이다.따라서 구현을 위해서는 데이터를 저장하는 공...
1. 자바는 왜 개발되었는가?자바는 Green Project를 위해서 개발된 언어이다. Green Project는 가전...
1. 자바 프로그램 구조 - 자바 프로그램은 하나의 '.java' 파일에 하나의 클래스를 정의한다. - ...
1. 증감연산자위와 같은 코드를 실행했을 때, total과 total2에는 얼마가 들어갈까?total ==2t...
1. 객체 지향 프로그래밍의 역사 1960년 대까지 소프트웨어는 하드웨어에 비해 발전속도가 굉장히 더뎠다...
1. 상속 - 두 객체가 포함 관계인 경우, 상속을 이용하여 코드의 재사용성을 높일 수 있다. - 상속은 부모...
1. 추상화(Abstraction) - 추상화란 구체적인 사실들을 일반화 시켜 기술한 것을 의미한다. - 현실 세계에...
1. 클래스의 구조- 3번 째, 4번 째 줄은 각각 변수와 메서드를 정의하는 방법이다.- 2번 째 줄은 클래스의 ...
1. Method(메서드) - 메서드는 반복적인 로직(프로세스)을 묶어 코드를 간결하고 재사용성이 높도록 만들...
지난 포스팅보다 조금 더 자세하게 메서드 오버로딩의 개념과 필요한 이유에 대해 설명하고자 한다.1. 메...
1. 가변적 매개변수 - 매개변수의 개수가 지정되어야만 하는 제한을 극복하기 위해 만들어졌음. (유지보수...
1. 묵시적 형변환 - 형변환 연산자를 사용하지 않아도 자동으로 이루어지는 형변환을 의미한다. - 더 넓은 ...
1. 인터페이스- 인터페이스는 추상클래스보다 더 추상도가 깊은 개념이다.- 멤버변수는 모두 상수로 선언해...
1. 패키지- 패키지란 폴더 또는 디렉터리를 의미한다.- 자바 패키지는 관련된 인터페이스나 클래스를 적절...
1. 오류 1) 에러 - 프로그램으로 처리할 수 없는 오류로서 에러 발생 시 프로그램이 중단된다. ex) 네트워...
1. 사용자 정의 예외- 프로그램의 스타일에 따라 예외로 처리해야하는 경우, 사용자 정의 예외 클래스를 만...
1. java.lang 패키지- 가장 기본이 되는 필수 클래스와 인터페이스를 포함한 패키지- java.lang 패키지는 i...
1. String 클래스- 고정된 문자열을 생성할 때 주로 사용된다.- 객체이지만, 특이하게도 new 예약어를 사...
<java.util 패키지의 구조>이번 포스팅에서는 날짜와 시간을 조작하는 Date,Calendar, 다양한 형태...
https://www.acmicpc.net/problem/1080[문제]3x3 부분행렬의 값을 전부 0->1 ,1->0으로 뒤집을 수 있는 연산을 가지고,A행렬 -> B행렬로 만드는 최소 연산 횟수를 구하여라.[문제 풀기 전 생각할 것](0,0) (N-1,0), (0, M-1), (N-1,M-1)의 값을 결정할 수 있는 부분행렬은 딱 1개밖에 존재하지 않는다.즉, (0,0)에서 3x3 매트릭스를 그려서, A[0][0] != B[0][0] 이라면 3x3 매트릭스에 해당하는 값을 전부 뒤집는다.이제, (0,1)에 영향을 주는 매트릭스는 (0,1)을 꼭지점으로 하는 매트릭스 하나뿐이다. 마찬가지로 A[0][1] != B[0][1]을 확인한다.위의 예시처럼 → 방향으로 순서대로 확인을 해나간다.[알고리즘.......
https://www.acmicpc.net/problem/2217문제 : N개의 로프가 주어지는데, 로프가 견딜 수 있는 무게는 각각 다르다. 로프를 K개 사용하면 각 로프가 받는 무게는 W/K로 정확하게 나눠진다.로프를 적절히 배합하여 견딜 수 있는 최대 무게를 찾아라.1. 로프의 개수가 100000개까지 나올 수 있으므로 상대적으로 입출력이 빠른 sys.stdin.readline()을 사용한다.2. 로프를 K개 선택했다고 했을 때, 해당 로프 조합이 견딜 수 있는 최대 무게는, 가장 약한 로프에 의존한다.3. 따라서 로프를 오름차순으로 정렬하여 사용하는 것이 바람직하다.4. 로프를 오름차순으로 정렬한 후, N개의 로프를 선택했을 때부터 1개의 로프를 선택했을 때까지 모든.......
https://www.acmicpc.net/problem/2875문제 : 팀을 구성할 때는 반드시 여자 2명과 남자 1명으로 구성된다. 가장 많은 팀을 구성하는 것이 문제.하지만, 인턴직으로 근무해야하는 사람 수(K)는 반드시 보장해주어야 한다.1. 남은 사람의 수가 K보다 작아지지 않도록 팀을 구성하면 끝.2. 시간 복잡도 O(n). 코드 개선 시 O(1)도 가능하다.[Python 3.x]#백준 #baekjoon #online #judge #greedy #algorithm #coding #test #대회 #or #인턴 #2875 #온라인 #저지 #코딩 #테스트 #코테 #알고리즘
https://www.acmicpc.net/problem/1931겹치지 않게 최대한 많은 회의 수를 찾는 문제.[시작시간, 끝나는 시간] 으로 이루어져있다고 했을 때, 회의 시간이 겹치지 않게 구성해야 한다.만약, 회의 시간이 [1,4] , [3,5]인 두 회의가 있다고 하면, 3~4시는 회의가 겹치기 때문에 참석할 수 없다.자, 그럼 여러 회의가 있을 때, 어떤 회의를 선택해야 할까?최대한 많은 회의를 하기 위해서는 반드시 일찍 끝나는 회의를 진행하는 것이 좋다.일찍 끝나는 회의란, `절대 시간`이 짧은 회의를 의미하는 것이지, 회의 시간의 길이를 의미하는 것이 아니다.즉, [1,4], [3,5] 두 회의가 있다면 4시에 끝나는 1번 회의를 선택하는 것이.......
https://www.acmicpc.net/problem/1744주어진 수를 적절히 묶어, 최댓값을 갖게 하는 문제.[문제 풀기 전에 생각해야 할 것]어떻게 묶어야 값이 커지는 지를 파악해야 한다.예를 들어, [-3,-2, 0,1,2,3] 이라는 숫자가 있다면,(-3)*(-2), 0, 1, (2*3) 으로 만들고 더 해주면 가장 큰 값인 13을 갖는다.이 논리를 정리하면, 다음과 같다.1) 음수는 작은 수 끼리 묶는다.2) 양수는 큰 수 끼리 묶는다.3) 0은 더하나 마나 제외.[알고리즘]안타깝게도 위 논리에는 예외가 있다. 따라서 좀 더 명쾌하게 정리하는 작업이 필요하다.예를 들어, [1,1,1,1] 이라는 숫자가 있다면 어떨까? 위에 정의한 알고리즘을 사용하면 (1*1)+(1*1).......
https://www.acmicpc.net/problem/10610주어진 숫자를 잘 조합하여 가장 큰 30의 배수로 만드는 문제.[문제 풀기전에 생각할 것]30의 배수가 가능한 경우와 불가능한 경우를 나누어 생각해본다.초등학생 때 배우는 사실만으로도 충분히 문제에 대한 접근이 가능하다..1. 30의 배수가 되기 위해서는 반드시 '0' 이라는 숫자가 포함되어야 한다.2. 30의 배수가 되기 위해서는 반드시 모든 숫자의 합이 3의 배수여야 한다.그렇다면 가장 큰 수는 어떻게 찾을까?주어진 숫자가 1,2 조건을 만족한다고 가정하자.그럴 경우, 맨 뒤의 숫자를 0으로만 고정한다면 어떤 값이라도 30의 배수가 된다.따라서 가장 큰 수부터 나열하.......
https://www.acmicpc.net/problem/1541[문제 풀기 전 생각할 것]수식이 나열되어있을 때, 괄호를 어디에 쳐야하는 지를 파악한다.1+2-3+4+5+6-7+8+9 라는 수열이 주어지면, 괄호는 다음과 같이 쳐야 한다.1+2-(3+4+5+6)-(7+8+9)즉, -부호일 때 괄호를 열고 다시 -부호를 만날 때 괄호를 닫아준다.물론, 끝까지 -부호를 안만날 수도 있기 때문에 수의 끝에 도달해도 괄호를 닫는다.논리는 비교적 쉬우나, 구현할 때는 조금 짜증나는 문제가 될 수 있다.[Python 3.x]#백준 #baekjoon #online #judge #algorithm #coding #test #잃어버린 #괄호 #1541 #온라인 #저지 #코딩 #테스트 #코테 #알고리즘
https://www.acmicpc.net/problem/25291. 전수조사를 진행한다면 시간복잡도는 10! 이라는 것을 알 수 있음. (순열로 풀 수 있음.)2. 하지만, 부등호가 만족되지 않는다면 더 이상 깊이 탐색할 필요가 없음. (Branch and bound나 backtracking을 떠올리는 것이 일반적)3. 최댓값과 최솟값을 찾으면 되기 때문에 함수를 분할하는 것이 타당.[Python 3.x]#백준 #baekjoon #online #judge #greedy #algorithm #coding #test #부등호 #2529 #온라인 #저지 #코딩 #테스트 #코테 #알고리즘
https://www.acmicpc.net/problem/11381. Permutation을 이용해도 Pass 할 확률이 높다. 제한시간이 2초기 때문. 다만, 메모리 제한이 128MB 이기 때문에, 모든 Permutation을 저장해두고 사용하는 방식은 바람직하지 못함.2. Permutation은 무식하게 해결하는 방법이므로 Greedy한 접근이라고 볼 수 없음.3. 이 문제의 핵심 아이디어는 작은 숫자부터 나열할 경우 어디에 나열해야 하는지 위치를 바로 결정할 수 있다는 것!4. 작은 숫자부터 나열할 경우, 왼쪽 빈 자리의 갯수 == 나보다 큰 숫자의 갯수 라는 규칙이 성립함.5. 이유를 잘 생각해보면 다음과 같음. 작은 숫자부터 나열하기 때문에, 현재 숫자를 나열할 때에는 반드시.......
https://www.acmicpc.net/problem/1969주어진 DNA 문자열에서 Hamming Distance의 합이 최소가 되도록 하는 문제.1. 가장 많이 등장하는 뉴클레오티드('문자')를 세고 그 값을 Max로 설정. 가장 많이 등장하는 문자가 H.D가 최소가 되도록 하므로 DNA 결과(result)에 포함시킨다.2. 하나의 뉴클레오티드가 결정될 때마다 H.D의 값은 N - Max 만큼 증가한다.3. 시간복잡도 : O(N*M) ~ O(N)[Python 3.x]#백준 #baekjoon #online #judge #greedy #algorithm #coding #test #DNA #1969 #온라인 #저지 #코딩 #테스트 #코테 #알고리즘
https://www.acmicpc.net/problem/11201. B의 부분 문자열 중에서 A 문자열과 가장 일치하는 부분을 찾는다.2. A의 문자열의 앞 뒤에 B의 문자열과 일치하도록 삽입한다. (문제 풀이에 필요 없음.)3. 시간 복잡도 : O(25*25/4)= O(1), 사이즈가 너무 작음.[Python 3.x]#백준 #baekjoon #online #judge #algorithm #coding #test #문자열 #차이 #1120 #온라인 #저지 #코딩 #테스트 #코테 #알고리즘
https://www.acmicpc.net/problem/55851. 1000엔으로 물건을 산 후 거스름돈을 받는데, 동전이 최소가 되...
1. 배포 준비하기https://cli.vuejs.org/guide/deployment.html#netlify공식 사이트에 자세히 나와있습...
https://www.acmicpc.net/problem/11399모든 사람의 ATM 대기시간의 합이 최소가 되도록 설정하는 문...
1. price[] 에 맞춰, 동전의 개수를 최소로 주는 문제.2. pirce는 오름차순으로 정렬되어있기 때문에 가...
1. 비동기 처리 패턴자바스크립트는 비동기 처리를 해결하기 위해 끊임없이 새로운 기법을 개발했습니다....
1. 비동기 처리 패턴에 대한 글https://blog.naver.com/pjok1122/2216458827732. Async-await로 리팩...
1. 외부라이브러리 모듈화Vue.js는 React에 비해 자료가 많이 부족한 편입니다. 따라서 Vue.js 관련 ...
1. plugin 이란?https://kr.vuejs.org/v2/guide/plugins.html공식 사이트에 자세하게 나와있지만, 간단하...
먼저 웹 페이지의 모습을 보시죠.News | Ask | Jobs 를 눌렀을 때 각각 NewsView, AskView, Jobs...
1. HOC(하이오더 컴포넌트)란?컴포넌트의 코드 마저 재사용하는 고급 기술을 HOC라고 합니다. 현재...
1. Mixin이란?Mixin은 OOP, django 등 다양한 분야에서 등장하지만, Vue.js에서의 Mixin은 여러 ...
1. 스피너란?웹 페이지의 로딩 상태를 나타내는 컴포넌트를 의미합니다.2. 스피너의 사용스피너 외부...
Vue CLI는 Front 개발을 쉽게 하기 위해 정돈된 폴더(?)들을 사전에 제공해주는 기능을 합니다.1. Vu...
어떤 식으로 소스 코드들을 관리하는 지를 중점적으로 다루겠습니다.만들고자 하는 사이트가 news, ask, ...
1. Vuex란?Vue에서 컴포넌트들 간의 데이터 전송은 반드시 props와 event를 통해서 전달한다고 했습니...
1. 컴포넌트 통신이란? 컴포넌트 간의 통신에는 규칙이 있습니다.(1) 부모에서 자식으로 데이터를 전달...
1. Vue-router란?Router란 경로를 결정짓는 하드웨어나 소프트웨어를 의미합니다. Vue Router는 사용...
1. AxiosAxios는 Http 통신을 위해 개발된 라이브러리입니다. 기존에는 Ajax를 많이들 사용했지만, ...
Vue에서 제공하는 directive를 사용해 봅시다.우선 이처럼 여러 개의 데이터를 갖는 Vue를 생성했다고 합...
1. PaginatorPaginator란, 게시판과 같은 목록이 주어져있을 때, 페이지 당 몇 개의 글을 보여줄지 지...
1. Vue란?UI를 빠르게 개발하기 위해 만들어진 자바스크립트 프레임워크입니다. MVVM(Model-Vie...
1. Reactivity란?한글로 나타내면 반응성이라는 뜻입니다. '반응성'의 의미는 값이 변했을 때...
1. 컴포넌트란?Vue는 화면의 모든 요소를 컴포넌트로 생각합니다. 따라서 컴포넌트를 설계하고, 페이지 ...
1. 합격인증고급을 응시했고 두 문제 틀리고 합격해, 1급 증서를 발급받았다.2. 시험정보<시험 요...
1. REST란?Representational status transfer의 약자이며 의미에서 유추할 수 있듯 '무언가&#x...
1. DRF란?만약 Rest API가 뭔지 모른다면, 해당 포스팅을 먼저 참고하시기 바랍니다.https://bl...
1. Ajax란?현재 웹 페이지는 그대로 두고 변경된 부분만을 보여주는 기술을 의미합니다. 불필요하게 모...
1. 배포를 위한 설정Setting.py에서 다음을 수정하셔야 합니다.(1) DEBUG처음에는 DEBUG &#...
1. 합격 인증당시 필기, 실기 점수는 제법 높은 편이었던 걸로 기억한다. 따라서 필자가 했던 공부 방법을 ...
1. Class-based view란?view는 데이터를 처리하는 코드들을 모아놓은 부분입니다. 즉 사용자에게 보여지...
1. Humanize 사용하기휴머나이즈 필터는 날짜, 숫자 등을 사람 눈에 더 친숙하게 바꿔주는 필터를 제공...
1. WYSIWYG란?WYSIWYG는 "What you see is what you get"의 약자로, 보는 것 ...
1. DetailView (Template에 추가 데이터 전달하기)DetailView는 queryset이나 model을 전달받고, ur...
1. Decorator란?함수를 Wrapping 하는 기법으로 반복되는 코드를 줄일 수 있다는 장점이 있습니다. 물...
1. 로그인 예외처리(Form)(1) 예외가 발생할 수 있는 문장입니다.(2) 예외가 발생한 경우, form의 error ...
1. 합격 인증과목 당 한 두 문제정도씩 틀렸으니, 아주 손쉽게 합격했다고 볼 수 있다. 점수를 인증하는 이...
1. 태그란?태그란, 해당 글이 어떤 관련이 있는지를 나타내기 위해 사용됩니다. 태그를 이용해서 검색과 ...
1. static 파일이란?정적파일이란 의미로, 변하지 않는 파일을 의미합니다. 이미지, 동영상, CSS파일,...
1. SQLite3란?SQLite는 MySQL나 PostgreSQL와 같은 데이터베이스 관리 시스템이지만, 서버...
SQLite로 테이블을 조회하는 방법은 MySQL 또는 Oracle과 매우 유사합니다.1. 전체 조회- fetcho...
이제 굉장히 익숙하리라 생각하고, 코드만 보여드리겠습니다.1. 데이터 수정(Update)- Auto commit이 ...
1. codepen.io이 사이트는 HTML / CSS/ Javascript 코드를 별도의 설치 없이 테스트할 수 있습니...
1. dl, dt, dd 태그dl : definition list의 약자로 어떤 내용을 정의할 때 사용하는 태그입니다.dt : def...
<code>와 <pre> 태그 모두 이전에 사용하던 서체와 다른 서체가 사용됩니다.- pre는 이전에 ...
1. Django란?장고란 파이썬 언어를 기반으로 하는 웹 Framework입니다. 프레임워크란, 서비스를 개발하...
저는 toy_community 프로젝트의 users 앱 안에 있는 models.py를 수정하고 있습니다.(1) class users(model...
1. Admin 페이지란?DB 테이블을 웹 페이지 상에서 손쉽게 관리할 수 있도록 도와주는 웹페이지를 의미...
1. Templates 생성하기템플릿이란 HTML 코드를 의미합니다. HTML 코드를 직접 만들어 사용해도 ...
1. 시저 암호란?약 기원전 100년 경에 로마의 장군인 Caesar가 동맹군들과 소통하기 위해 만든 암호입니...
1. HTML 상속이란? 회원가입 페이지와 로그인 페이지를 생각해볼 때, html 코드는 아주 유사합니다. ...
장고에서 Form을 얼마나 잘 다루냐가 실력을 좌우한다고 해도 과언이 아닐정도로 Form은 굉장히 중요한 ...
먼저 합격인증부터 시작한다.필자는 2015년에 합격했지만, 2019년에도 똑같은 문제를 출제하고 있다더라.. ...
1. lowdb란?JSON이라는 파일 형식을 이용하여 데이터를 저장하는 아주 간단한 데이터베이스입니다. ...
1. 패스워드 암호화사용자의 개인정보나 비밀번호는 외부로 유출될 경우 형사상의 책임을 물을 수도 있는...
1. OAuth 2.0 이란?OAuth란, 타사의 사이트에 대한 접근 권한을 얻고, 그 권한을 이용하여 개발할 수 ...
지난 포스팅에서 AccessToken을 발급받기 위해서 Resource Server에게 Client를 등록하는 얘기를 다뤄...
revert와 reset은 커밋을 취소할 때 사용한다고 많이들 알고 있습니다. 하지만 이 둘의 차이점에 대해서는 ...
많은 분들이 rebase는 고급기술이라고 생각합니다. 하지만 rebase는 생각보다 쉽습니다. rebase에 대해 알...
구글 로그인 기능을 제공하기 위해, 내 웹 서비스를 구글에 등록하는 과정을 살펴봅시다.(1) https://conso...
1. UnicodeDecodeError란?python 3.x 버전에서는 웬만해선 이런 문제가 발생하지 않습니다. 하지만, p...