목록전체 (129)
지나공 : 지식을 나누는 공간
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bdVwhZ/btqS9Zhksmu/PqUWhRiA98n0Xkk0YgZrL0/img.png)
문제링크 : www.acmicpc.net/problem/4796 4796번: 캠핑 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, L, P, V를 순서대로 포함하고 있다. 모든 입력 정수는 int범위이다. 마지막 줄에는 0이 3개 주어진다. www.acmicpc.net 주석 없는 코드 #include using namespace std; int l, p, v,i; int main() { do { i++; cin >> l >> p >> v; if (l == 0 && p == 0 && v == 0) break; int ans = (v / p) * l + min(v % p, l); cout
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Ubv1L/btqTcPSSVKC/UlJm5PKQHvEghFPjan1GlK/img.png)
www.acmicpc.net/problem/1759 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net next_permutation으로 조합을 구현했다. 주석 없는 코드 #include #include #include #include using namespace std; int main() { vector v; vectorpick; int l, c; cin >> l >> c; for (int i = 0; i > x; v.push_back(x); pick.push_back(..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/sQotk/btqThYBKFq8/hMdu4GKkFO08Roc81zo3ak/img.png)
03장 마지막 JPA Auditing으로 생성시간/수정시간 자동화하기 BaseTimeEntity는 abstract 클래스로, Entity들의 생성시간과 수정시간을 자동으로 관리하는 역할을 한다. @MappedSuperclass JPA Entity 클래스들이 BaseTimeEntity를 상속할 경우 그 필드들인 createdDate, modifiedDate를 컬럼으로 인식하도록 한다. @EntityListeners(AuditingEntityListener.class) BaseTimeEntity 클래스에 Auditing 기능을 포함시킨다. @createdDate Entity가 생성되어 저장될 때 시간이 자동저장된다. @LastModifiedDate 조회한 Entity의 값을 변경할 때 시간이 자동저장된다.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/yREVH/btqSQ5nFGy1/qukP2kbVWB1NPmbwu0CUAk/img.png)
이동욱님의 '스프링부트와 AWS로 혼자 구현하는 웹서비스'를 읽고 기록하고 싶은 내용을 정리했다. JPA는 jpa 카테고리에서 자세하게 다루었으므로 기억하고 싶은 내용만 간단히 적을 예정이다. 1. 주요 어노테이션을 클래스에 가깝게 쓰자 한 클래스에 어노테이션을 여러 개 쓰는 경우가 많다. 그럴 때 순서는 중요할 수록 클래스명에 가깝게 쓰자. @Getter와 같은 롬복 어노테이션은 코드를 단순화시키지만 필수 어노테이션은 아니다. 따라서 @Entity를 클래스에 가깝게 두자. 2. Entity 클래스에서는 절대 setter 메소드를 만들지 말자 현재 위에 첨부한 사진에는 Getter만 있고 Setter는 없다. 무작정 getter/setter를 생성하면 해당 클래스의 인스턴스 값들이 언제 어디서 변해야 하..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/RZgo0/btqSQ4hx2Gc/MQxBbSmSvKI5wk8fj2bBy0/img.png)
오늘 알아볼 내용은, 순차 탐색 이진 탐색 트리 자료구조 이진 탐색 트리 실전문제 - 부품 찾기 실전문제 - 떡볶이 떡 만들기 순차 탐색 [개념] 가장 기본 탐색 방법으로, 배열 안에 있는 특정한 데이터를 찾기 위해 앞에서부터 데이터를 하나씩 차례대로 확인하는 탐색 알고리즘이다. 이름처럼, 순차로 데이터를 탐색한다. [사용예] - 배열에 특정 값의 원소가 있는지 체크할 때 - 배열 자료형에서 특정한 값을 가지는 원소의 개수를 셀 때 [코드] #include #include #include using namespace std; int sequantialSearch(int n, string target, vector arr) { //모든 원소 하나씩 확인 for (int i = 0; i < n; i++) {..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bOv9lL/btqSNmo9hAZ/bfrRHb3Q6GcilT2LRHQyI1/img.png)
띄어쓰기를 포함해서 원하는 글자 수 만큼 한줄로 한번에 입력받기 cin의 getline이나 fgets를 사용할 수 있는데 fgets가 좀 더 빠르다. 1. cin.getLine(저장할 문자열, 글자 수) #include #include using namespace std; int main() { char chars[10]; cin.getline(chars, 10); cout
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b2aNo7/btqSDvtWWCB/oKhQWT1Tz3wKkJzq6WnkEK/img.png)
이동욱 님의 '스프링 부트와 AWS로 혼자 구현하는 웹서비스'를 읽고 기록하고 싶은 내용을 적은 글입니다. 1. 코드 외 패키지명은 주로 웹사이트 주소의 역순으로 한다. 절대 수동으로 검증하고 테스트 코드를 작성하지 않는다. 테스트 코드로 먼저 검증한 뒤 정말 못 믿겠다 싶을 때 프로젝트를 실행해서 확인한다. 2. 메인 클래스 코드 작성하기 Application 클래스는 앞으로 만들 프로젝트의 메인 클래스이다. @SpringBootApplication 스프링부트가 자동설정되게 하는 어노테이션. 스프링 Bean 읽기와 생성을 모두 자동으로 설정한다. 특히, 이 어노테이션이 있는 위치부터 설정을 읽어가므로 이 어노테이션은 항상 프로젝트의 최상단에 위치해야 한다. SpringApplication.run() m..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bViOD0/btqSATV64F0/HufwUNIkbDm3TMmOPmE2hK/img.png)
터미널 창에서 gradlew wrapper --gradle-version 4.10.2 실행해도 된다. 아래는 다른 방법이다. 아래 그림에서 빨간색으로 된 파일을 연다. gradle-wrapper.properties 에서 빨간색 박스 안에 있는 5.10.2 부분을 원하는 버전으로 설정한다. 4.10.2로 변경 우측 상단에 있는 Gradle로 들어가서 새로고침하기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bU1NXs/btqQXAKmnLe/VWRIlSl1HMMyPzG8lZkFq0/img.png)
2020년 09월 01일부터 2020년 12월 21일, 4개월 간의 ICT학점연계인턴십이 끝났다. 어떻게 흘러간지 모를만큼 시간이 너무 빠르다. 벌써 수료라니...ㅎㅎ 좋은 사수님을 만나 정말 큰 성장을 이룰 수 있던 4개월이었다. 인턴십을 시작하기 전 백엔드에 대한 경험과 지식이 매우 부족했는데, 4개월 동안 DB설계, API 설계, 각 API 개발에 이어 기획까지 하게 되었으니 이건 엄청난 성장이라고 생각한다. 다른 분야도 마찬가지겠지만 개발은 더더욱 직접 해 봐야 느는구나 싶다. 그래서 4개월 간의 여정을 기록하려고 한다. 1. 서류 전형과 코딩테스트 이 부분은 기존에 자세하게 적어놓은 포스팅이 있어서 첨부하겠다. 7월 중순에 했던 걸로 기억한다. 정확하지 않다. eocoding.tistory.co..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/L4ODc/btqRL4cZddk/bSI8oQYMT3wHnytY3RG9gk/img.png)
알아볼 내용은, sort 기본 함수 알아보기 내림차순 정렬하기 특정 변수 기준으로 정렬하기 compare 함수 구현 연산자 오버로딩으로 구현 특정 변수 기준 내림차순 정렬하기 연산자 오버로딩 + compare 함수로 구현 compare 함수만 구현 정렬 방식은 퀵 정렬이다. 시간복잡도는 O(NlogN)이라고 레퍼런스에도 적혀 있다. www.cplusplus.com/reference/algorithm/sort/ sort 기본 함수 알아보기 sort의 인자로는 [배열의 시작주소]와 [배열의 마지막주소 + 1]이 들어간다. #include #include using namespace std; int main(void){ int a[10] = {9, 1, 4, 5, 8, 2, 7, 3, 6, 10}; sort(..