목록전체 글 (130)
지나공 : 지식을 나누는 공간

백준 점 모으기 문제링크 www.acmicpc.net/problem/7571 7571번: 점 모으기 첫 줄에는 격자공간의 크기와 점들의 개수를 나타내는 두 정수 N과 M이 하나의 공백을 사이에 두고 주어진다. 다음의 M줄에는 각 줄마다 격자공간내의 점의 위치를 나타내는 두 개의 정수가 하나 www.acmicpc.net 완전탐색으로 빠르게 풀면서도 뭔가 의심스러웠다... 이렇게 간단하다고..? 역시나ㅎ 시간초과였다. 찾아보니 중간값으로 해결해야 한다는데 그 이유를 기록하고자 한다, 먼저, 완전탐색으로 푼 시간 초과 코드는 아래와 같다. #include #include using namespace std; int n, m, ans; vectorv; void init() { cin >> n >> m; for ..

문제링크 : 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

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(..

03장 마지막 JPA Auditing으로 생성시간/수정시간 자동화하기 BaseTimeEntity는 abstract 클래스로, Entity들의 생성시간과 수정시간을 자동으로 관리하는 역할을 한다. @MappedSuperclass JPA Entity 클래스들이 BaseTimeEntity를 상속할 경우 그 필드들인 createdDate, modifiedDate를 컬럼으로 인식하도록 한다. @EntityListeners(AuditingEntityListener.class) BaseTimeEntity 클래스에 Auditing 기능을 포함시킨다. @createdDate Entity가 생성되어 저장될 때 시간이 자동저장된다. @LastModifiedDate 조회한 Entity의 값을 변경할 때 시간이 자동저장된다.

이동욱님의 '스프링부트와 AWS로 혼자 구현하는 웹서비스'를 읽고 기록하고 싶은 내용을 정리했다. JPA는 jpa 카테고리에서 자세하게 다루었으므로 기억하고 싶은 내용만 간단히 적을 예정이다. 1. 주요 어노테이션을 클래스에 가깝게 쓰자 한 클래스에 어노테이션을 여러 개 쓰는 경우가 많다. 그럴 때 순서는 중요할 수록 클래스명에 가깝게 쓰자. @Getter와 같은 롬복 어노테이션은 코드를 단순화시키지만 필수 어노테이션은 아니다. 따라서 @Entity를 클래스에 가깝게 두자. 2. Entity 클래스에서는 절대 setter 메소드를 만들지 말자 현재 위에 첨부한 사진에는 Getter만 있고 Setter는 없다. 무작정 getter/setter를 생성하면 해당 클래스의 인스턴스 값들이 언제 어디서 변해야 하..

오늘 알아볼 내용은, 순차 탐색 이진 탐색 트리 자료구조 이진 탐색 트리 실전문제 - 부품 찾기 실전문제 - 떡볶이 떡 만들기 순차 탐색 [개념] 가장 기본 탐색 방법으로, 배열 안에 있는 특정한 데이터를 찾기 위해 앞에서부터 데이터를 하나씩 차례대로 확인하는 탐색 알고리즘이다. 이름처럼, 순차로 데이터를 탐색한다. [사용예] - 배열에 특정 값의 원소가 있는지 체크할 때 - 배열 자료형에서 특정한 값을 가지는 원소의 개수를 셀 때 [코드] #include #include #include using namespace std; int sequantialSearch(int n, string target, vector arr) { //모든 원소 하나씩 확인 for (int i = 0; i < n; i++) {..

띄어쓰기를 포함해서 원하는 글자 수 만큼 한줄로 한번에 입력받기 cin의 getline이나 fgets를 사용할 수 있는데 fgets가 좀 더 빠르다. 1. cin.getLine(저장할 문자열, 글자 수) #include #include using namespace std; int main() { char chars[10]; cin.getline(chars, 10); cout

이동욱 님의 '스프링 부트와 AWS로 혼자 구현하는 웹서비스'를 읽고 기록하고 싶은 내용을 적은 글입니다. 1. 코드 외 패키지명은 주로 웹사이트 주소의 역순으로 한다. 절대 수동으로 검증하고 테스트 코드를 작성하지 않는다. 테스트 코드로 먼저 검증한 뒤 정말 못 믿겠다 싶을 때 프로젝트를 실행해서 확인한다. 2. 메인 클래스 코드 작성하기 Application 클래스는 앞으로 만들 프로젝트의 메인 클래스이다. @SpringBootApplication 스프링부트가 자동설정되게 하는 어노테이션. 스프링 Bean 읽기와 생성을 모두 자동으로 설정한다. 특히, 이 어노테이션이 있는 위치부터 설정을 읽어가므로 이 어노테이션은 항상 프로젝트의 최상단에 위치해야 한다. SpringApplication.run() m..

터미널 창에서 gradlew wrapper --gradle-version 4.10.2 실행해도 된다. 아래는 다른 방법이다. 아래 그림에서 빨간색으로 된 파일을 연다. gradle-wrapper.properties 에서 빨간색 박스 안에 있는 5.10.2 부분을 원하는 버전으로 설정한다. 4.10.2로 변경 우측 상단에 있는 Gradle로 들어가서 새로고침하기

2020년 09월 01일부터 2020년 12월 21일, 4개월 간의 ICT학점연계인턴십이 끝났다. 어떻게 흘러간지 모를만큼 시간이 너무 빠르다. 벌써 수료라니...ㅎㅎ 좋은 사수님을 만나 정말 큰 성장을 이룰 수 있던 4개월이었다. 인턴십을 시작하기 전 백엔드에 대한 경험과 지식이 매우 부족했는데, 4개월 동안 DB설계, API 설계, 각 API 개발에 이어 기획까지 하게 되었으니 이건 엄청난 성장이라고 생각한다. 다른 분야도 마찬가지겠지만 개발은 더더욱 직접 해 봐야 느는구나 싶다. 그래서 4개월 간의 여정을 기록하려고 한다. 1. 서류 전형과 코딩테스트 이 부분은 기존에 자세하게 적어놓은 포스팅이 있어서 첨부하겠다. 7월 중순에 했던 걸로 기억한다. 정확하지 않다. eocoding.tistory.co..