분류 전체보기(103)
-
[Java] 백준 입력값 받는 법(BufferedReader, next())
1. 백준 코딩테스트 입력값 받는 법 백준 코딩테스트를 준비하려고 하는데 기존에 프로그래머스에서 진행하던 방식과는 입출력 방식이 조금 다른 형태라 당황했다. 우선 간단하게 정리하자면 백준에 답안을 제출할때는 다음과 같은 형식을 지켜야한다. 1. 클래스의 이름은 Main클래스, 이외에 package 경로는 없어야한다. 2. 입력값이 주어진다고 하는 문제가 대부분인데 이 때 Scanner 혹은 BufferedReader를 통해 입력값을 받아야 한다. 뿐만 아니라 입력값이 첫 째줄에 띄어쓰기로 들어오느냐 개행 후 별개로 들어오느냐에 따라 처리방식이 달라진다. 현재까지는 다음과 같은 규칙들만 확인한 상태이다. 1번 규칙같은 경우는 쉽게 적용시킬 수 있으나 2번의 경우 초급자에게는 조금 난해할 수 있다. 백준에서..
2023.06.13 -
[GitHub] GitHub Desktop 사용 방법
기존에 항상 터미널로 push, pull을 하다가 GUI가 제공되는 GitHub 툴이 있으면 편하겠다 싶어서 GitHub에서 제공하는 무료 프로그램인 GitHub Desktop을 사용하게 됐다. 처음 사용하는 지금 조금 난해하기에 정리하고자 글을 작성한다 설치 방법에 대한 설명은 생략한다. 깃헙 데스크톱에서 제공하는 기능은 크게 세가지다.(맥북 기준 좌측 상단의 파일 버튼 클릭 시 나오는 드롭다운) 1. New Repository 2. Add Local Repository 3. Clone Repository 여기서 의미하는 Repository는 GitHub의 저장소(Repository)를 뜻하지 않는다. Local, 즉 사용자의 컴퓨터에 .git(init이나 clone시 생성되는 git 파일)파일이 있는..
2023.05.31 -
양자역학 정리
이 글은 코펜하겐 학파가 주장한 양자역학에 대해 단순히 나의 이해만을 위해 작성한 글임을 밝힌다. -이중슬릿 실험 파동은 입자임이 정설이었으나 파동임이 밝혀졋. 이는 진공상태에서의 전자(입자)가 관측이나 측정이 없는 상태에서 결과로써 알 수 있던 것이다. 즉 여기서 뜻하는 관측, 측정이란 빛, 공기 등의 매질, 측정 장치 등 전자의 이동경로를 방해할 수 있는 모든 방해요소를 뜻한다. 측정, 관측 장비를 통해 관측했을 때 우리는 이중슬릿의 전자모양이 두 줄임을 알 수 있다. 이것이 증명하는 것은 관측했다는 사실 자체만으로 (여기서는 봤다(watch)라는 사실에 초점이 맞춰진 것이 아니다. 봤다라는 것이 전자가 빛에 반사돼 관측됨을 뜻하기 때문에 전자가 파동의 형태에서 입자의 형태로 변하는 것을 뜻한다 )이..
2023.05.29 -
[Git] Git 다른 브랜치에서 pull 하기
같은 remote에 서로 다른 branch가 있다고 했을 때 branch에 내용은 서로 다를 것이다. 이 때 다른 branch에 commit하기 위해서는 remote 저장소에 있는 것을 당겨오는 pull을 진행해야 하는데 pull이 되지 않는다. 우선 기본적인 git의 pull 조건은 다음과 같다. 현재 local 저장소(staging area를 뜻한다.내 컴퓨터의 저장소를 뜻하는 것이 아님. add한 상태가 staging area에 변경사항이 올라간 것) 보다 remote 저장소에 추가 commit 내용이 있을 경우 -> 이 때 remote에만 변경사항이 있을 수 있고 local과 remote 둘다 변경사항이 있을 수 있다. local만 변경사항이 있는 경우는 문제되지 않는다. 그냥 push가 가능. ..
2023.05.26 -
[MySQL] group by에서 최대값을 가진 row들을 가져오기
테이블에서 최대값을 구하기 위해서는 집계함수를 써야 하는데 이 때 집계함수는 select문에서 사용 가능하다. 최대값만 가져오는 건 쉽지만 최대값을 가진 row를 불러오는 것은 또 다른 문제이며 group by에서 여러개의 그룹에서 각 column에 해당하는 최대값 row들을 불러오는 것은 또 다른 문제이다. 쉬운 것부터 확인해보자 1. 특정 column에서 최대값을 가진 table의 row 가져오기 다음과 같은 테이블이 있을 때 가장 비싼 가격을 가진 물건을 가진 id와 물건의 이름을 가진 row를 가지고 오고 싶다면 어떻게 해야할까? 1. 서브쿼리를 사용하던지 2. 가격을 내림차순으로 정렬한 후 첫번째 row를 가지고 오면된다. # 1번 방법 select * from post1 where price ..
2023.05.26 -
[MySQL] foreign key(외래키) 사용법
MySQL에서는 제약 조건이라는 것이 있다. 데이터를 저장할 때 특정 조건에 해당하는 데이터만 레코드에 집어넣을 수 있게 설정하는 것이다. 대표 제약 조건으로 NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, DEFAULT가 있다. 여기서는 주제에 맞게 FOREIGN KEY만 다루겠다. FOREIGN KEY는 여러 테이블에 서로 공통된 값을 참조할 수 있도록 도와준다. table1과 table2가 있을 때 table1에서의 id값을 다른 테이블에서도 사용하고 싶을 수 있다. 예를 들어 다음과 같이 테이블이 있다고 해보자. 이 때 table1의 id1값을 table2에서 참조하고 싶어한다. 즉 table2의 id(id2)값은 외래키로 지정하고 싶다면 위와 같이 작성한다. tab..
2023.05.26