목록전체 글 (114)
모눈종이에 사각사각
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bO6UoJ/btrymisVgkG/kKKQPZK6iU1JK3VNlam4R1/img.png)
🍀 EC2 서버 시간 맞추기 프로젝트 진행 중에, 주문 시간은 현재 시간으로 입력되도록 맞춰놨다. 로컬에서는 잘 입력되던 것이, EC2 서버에 올려 실행해보니 시간이 9시간 느린 것이다! 알고보니 EC2 서버 시간은 한국 시간이 아니기 때문에 맞춰줘야 한다고 한다. 1. 현재 시간 확인 date date 명령어를 치면 현재 시간을 확인할 수 있다. 지금 시각과 다르다면 시간대가 다르게 설정되어 있는 것이기 때문에 바꿔주어야 한다. 2. timezone 확인 more /etc/timezone 위의 명령어는 현재 설정된 timezone의 상태를 확인하는 것이다. 잘 설정되어 있다면 Asia/Seoul로 뜨고 아니라면 Etc/UTC라고 되어있을 것이다. 3. timezone 변경 TimeZone을 변경하기 위..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/pYZgi/btryk3pJrL6/vR09RyOAm9bXc4oRdlG0x1/img.jpg)
🍎 [백준 18405] 경쟁적 전염 문제링크 https://www.acmicpc.net/problem/18405 18405번: 경쟁적 전염 첫째 줄에 자연수 N, K가 공백을 기준으로 구분되어 주어진다. (1 ≤ N ≤ 200, 1 ≤ K ≤ 1,000) 둘째 줄부터 N개의 줄에 걸쳐서 시험관의 정보가 주어진다. 각 행은 N개의 원소로 구성되며, 해당 위치 www.acmicpc.net ⚾ 코드 from collections import deque N, K = map(int, input().split()) graph = [[0]*(N+1)] # 1부터 시작하게 하기 위해서 virus_location = [] for i in range(1, N+1): graph.append([0]+list(map(int, ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/batbHu/btryg430dAE/srUyzs12kJkCawGmF3Ysok/img.png)
🌰 천 단위 콤마 찍기 - FORMAT 금액을 표시할 때 '15,000원' 등 천단위로 콤마를 찍는다. MySQL에서는 숫자 값에 대한 포맷을 제공하는 함수인 FORMAT 함수가 있다. 사용 방법은 다음과 같다. FORMAT(칼럼 및 데이터, 소수점 이하 표시될 자릿수) return 값 : String 예시를 들어보도록 하자 SELECT FORMAT(deliveryFee,0) AS fee FROM DeliveryFee D WHERE D.status='Y'; 위는 DeliveryFee(배달비) 테이블에서 상태값이 Y인 배달비를 SELECT 하는 쿼리문이다. FORAMT 함수의 두 번째 파라미터에 0을 넣어주면 소수점 이하 자리는 나오지 않는다. 만약 두 번째 파라미터를 1과 2로 넣어주면 각각 소수점 첫째..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/TDG5r/btryd70Ax1G/PC7ep1XvOIeEQjaiSft8j1/img.jpg)
🌻 여러 개의 repository에 push하기 한 개의 프로젝트를 여러 개의 repository에 push 하기 위해서는 다음과 같은 과정을 거쳐야 한다. 1. 원격 저장소 추가 git remote add [원격 저장소 이름] [repository 주소] # 예시 git remote add origin2 https://github.com/~~~ 2. 새로 연결한 원격 저장소에 push git push -u [새로운 원격 저장소 이름] main # 예시 git push -u origin main 참고사이트 https://twofootdog.tistory.com/42
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/lJITA/btrwfcwxMHa/CG8UJcMSHUeF8y2eNyI1L1/img.jpg)
🌻 Github에 올라간 파일 삭제하기 프로젝트를 하면서 github에 private로 repository를 만들어서 계속 push하고 있었다. 그러다가 프로젝트를 public으로 바꾸려고 gitignore을 설정하려고 하니, 이미 올라간 파일이 있어서 적용되지 않았다. 이를 위해서는 이미 원격 저장소에 올라간 파일을 삭제해야 한다. git rm --cached -r [폴더명 | 파일명] # 예시 - 파일 삭제 git rm --cached -r .idea/test.txt # 예시 - 폴더 및 하위 파일 모두 삭제 git rm --cached -r .idea/ 그다음 commit과 push까지 진행해주어야 완료된다. 참고사이트 https://bskyvision.com/990
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/vf7ia/btrweyF9ol1/nKHH671m2cuxV4xAFXUyFk/img.jpg)
🍎 [백준 1707] 이분 그래프 문제링크 https://www.acmicpc.net/problem/1707 1707번: 이분 그래프 입력은 여러 개의 테스트 케이스로 구성되어 있는데, 첫째 줄에 테스트 케이스의 개수 K가 주어진다. 각 테스트 케이스의 첫째 줄에는 그래프의 정점의 개수 V와 간선의 개수 E가 빈 칸을 사이에 www.acmicpc.net ⚾ 코드 (PyPy3 제출) from collections import deque K = int(input()) def bfs(graph, i): q = deque() q.append(i) while q: now = q.popleft() for node in graph[now]: if visited[node] == visited[now]: return F..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cQ0m0p/btrye3EGRRX/lkMAwwegiPk1koRuwn7OA1/img.png)
🌰 SELECT문에서 NULL값 대체 - IFNULL 결과값이 NULL 값이 나왔을 때 IFNULL 함수를 쓰면 원하는 값으로 대체할 수 있다. SELECT IFNULL(칼럼 명, 대체 값) FROM 테이블 명 다음과 같은 DeliveryFee(배달비) 테이블이 있다고 할 때, 이 테이블에서 가게별 최소 배달비를 SELECT 할 것이다. SELECT MIN(deliveryFee) AS fee FROM DeliveryFee D WHERE D.storeIdx=? AND D.status='Y'; 만약 위와 같이 코드를 작성한다면 storeIdx 값에 1, 2, 3의 값을 넣었을 때는 0,2000, 2200으로 값이 잘 나오지만, 1,2,3이 아닌 다른 값을 넣으면 null 값이 나올 것이다. 그러나 다음과 같..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cW8wtc/btrv6dilW12/LMw5CO9uZlAG1BqKyb2YK1/img.jpg)
🍎 [백준 1697] 숨바꼭질 문제링크 https://www.acmicpc.net/problem/1697 ⚾ 코드 from collections import deque N, K = map(int, input().split()) visited = [False for _ in range(200001)] # visited = False or True dx = [1, -1, 2] # move result = 0 q = deque() # start visited[N] = True q.append([N, 0]) while q: x, count = q.popleft() if x == K: # if subin and her sister equal, break result = count break for i in ran..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/HfHEt/btruoMr8FUv/7fkAyMq8j6sXfvkTTLg0HK/img.jpg)
깃허브와 VSCode를 연동해보자. 먼저 깃허브의 리포지토리로 가서 주소를 복사한다. 그다음 VSCode를 열어서 왼쪽의 세 번째 버튼(Source Control)을 누른다음 Clone Repository를 누른다. 그리고 중앙 위쪽에 뜨는 창에 복사한 깃허브의 리포지토리 주소를 붙여넣는다. 엔터를 누르고 저장할 폴더를 선택한다. SelectRepository Location을 누른다. 새로운 창에서 열 것이면 Open in New WIndow, 현재 창에서 열 것이면 Open을 누른다.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cgDfZJ/btrt4hfUT3D/GAPe9JlLFVRykkTPwIwge1/img.jpg)
🥝 [branch 생성] // local branch 생성 $ git branch [branch name] // local branch 생성 + checkout $ git checkout -b [브랜치명] // remote branch 생성(local branch를 remote branch에 추가) $ git push origin [branch mame] 🥝 [branch 리스트 조회] // local branch list $ git branch // remote branch list $ git branch -r // branch list(remote + local) $ git branch -a 🥝 [branch 삭제] // local branch 삭제 $ git branch -d [branch name..