알고리즘
#10952
a, b = map(int, input())
ValueError: invalid literal for int() with base 10: ' '
➡ .split() 빼먹음
#1110
n = int(input())
x = n
cycle = 0
while 1:
if n < 10:
n = '0' + str(n)
else:
n = str(n)
plus_number = int(n[0]) + int(n[-1])
new_number = n[-1] + str(plus_number)[-1]
new_number = int(new_number)
cycle += 1
if new_number == x:
break
n = new_number
print(cycle)
다른 숫자들은 다 되는데 71만 답이 안나와서 진짜 너무너무 짱났다. 맞게 쓴 줄 알았는데 알고보니 하나를 빼먹었다. 문제를 코드로 옮길 때 좀 더 끝까지 꼼꼼하게 해야겠다.[-1]
git 특강 by 강민철 튜터
- git 관리는 1) 명령어로 (CIL) 2)소스트리로 할 수 있다.
소스트리를 이용한 관리는 1)의 시각성을 높인다.
- git의 기능= 버전 관리
- 변경 내용 확인
- 버전: 유의미한 결과가 결과물로 나온 것 = 커밋
- 작업 디렉터리(.git 폴더가 있는 곳)--(staging/add)--> 스테이지--(커밋)--> 저장소
-스테이지와 저장소는 가상의 공간
-명령어들
- mkdir: 폴더 생성
- cd: 이동하고자 하는 경로-> cd.. 상위 디렉토리로 이동
- ls: 현재 명령어를 입력하는 공간에서 파일 보기
- ls -a: (상동)모든 파일 보기
- . 현재공간 .. 상위 디렉토리
- clear: 창 깨끗하게 지우기
- git init: 로컬 저장소 만들기( .git 폴더 생성)
- touch 파일명: 빈 파일 만들기
- ls -al: 리스트로 보여줘(정리된 모양)
- vi: 파일 편짐(파일 내용 작성시엔 문서의 끝을 컴퓨터가 식별하기 좋게 하기 위해 줄바꿈을 해주는 것이 좋다)
- a(ppend)/i(nsert):편집 모드
- esc: 편집모드 종료
- w: 저장
- q: 나가기
- wq: 저장하고 나가기(강제 실행)
- cat 문서이름: 해당문서 내용 확인하기
- git status: 현재 상태를 보여줘
- git add a.txt: a.txt를 스테이징(tracked file이 됨)
- rm: 파일 삭제
- rm -rf.숨긴파일이름: 해당파일 삭제
- rm -rf git-test: git-test 폴더 삭제
- git commit: 커밋 내용 작성(본문까지)
- git commit -m "커밋 헤더/제목 쓰기(내용요약)"
- git commit -am "add and commit": 명령모드..❓
- git log: 커밋 내용 보기
- git log -p: 개별 커밋마다 보기
- git diff: 가장 최신 커밋 vs 현재 디렉토리 변경사항 비교
- git diff --staged: 가장 최신 커밋 vs 스테이지
- git diff 커밋해시(기준) 커밋해시: 앞의 해시 기준으로 뒷내용이 뭐가 다른지
- git restore --staged 파일명: unstage
-버전(커밋) 되돌리는 법
1) revert: 버전을 되돌린 새로운 버전 만들기(직전 버전과 같은 버전이 추가됨)
2) reset(soft/mixed/hard)
-
하나의 버전이 만들어지는 과정
-
1) 디렉터리에서 변경사항(파일 생성/수정/삭제) 생성
-
2) 스테이지에 추가
-
3) 저장소로 커밋
-
각 단계를 되돌리면 각각 3)soft reset 2)mixed reset 1) hard reset
-
git stash: 임시저장(내 파일에 적용하진 않고 잠시 킵)
-
git stash -m"메세지 내용": 메세지 써서 임시저장
-
git stash list: 임시저장 리스트
-
git stash apply statsh@{0}: 임시저장된걸 꺼내옴
-
git stash drop statsh@{0}: 임시저장된걸 꺼내옴
-브랜치
HEAD-> master(=main) <--이부분이 브랜치
헤드는 최신 커밋을 가리킨다
- git branch: 브랜치를 보여줌(* 현재 작업하고 있는 브랜치)
- git checkout 브랜치이름: 해당 브랜치로 작업환경 변경 = 체크아웃했다
- merge 브랜치: 해당 브랜치를 합하겠다-> 충돌 발생시 어느 브랜치의 어떤 내용을 선택할 것인지 직접 결정
Git 강의 (w/ 소스트리)
- shift + command + . : .git 파일 보임(소스트리에서 보이면 파일에선 안보여도 상관없음)
- 파일 변경-> 파일 상태에서 스테이징-> 커밋메세지 작성 후 커밋-> 히스토리 확인
- 커밋 반영(수동) 방향에 따라
- 로컬 repo --push--> 원격 repo
- 로컬 repo <--pull-- 원격 repo