Seren dev's blog
article thumbnail
[백준] 22858번 : 원상 복구 (small) - 자바[Java]

https://www.acmicpc.net/problem/22858 22858번: 원상 복구 (small) 수가 적혀있는 $P_1, P_2, ..., P_N$ $N$개의 카드가 있다. 1부터 N까지 수가 하나씩 존재하는 $D_1, D_2, ... , D_i , ... D_N$ 가 있다. 이때 $D_i$는 $P_{D_i}$ 값을 $i$ 번째로 가지고 오는 것을 의미한다. 이러한 www.acmicpc.net 위 방식을 그대로 K번 섞은 카드의 정보와 D의 정보를 알고 있다고 할 때, 원래 카드는 어떤 배치를 이루고 있었는지 구해보자. 입력 첫번째 줄에는 카드의 개수 N과 카드를 섞은 횟수인 K가 공백으로 구분되어 주어진다. 두번째 줄에는 K번 카드를 섞은 후 카드의 배치를 의미하는 Si가 공백으로 구분되어 ..

article thumbnail
[백준] 17413번 : 단어 뒤집기 2 - 자바[Java]

https://www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net 풀이 태그 밖에 있는 단어는 공백을 기준으로 구분하며 뒤집어야 한다. 태그 안에 있는 단어는 뒤집으면 안되고, 공백이 있어도 무시해야 한다. 로직 1. 단어를 뒤집기 위해 사용할 StringBuilder 타입 변수 sb를 선언하고 초기화한다. 2. 태그 안인지 밖인 지 구분할 boolean 타입 변수 flag를 선언하고 true로 초기화한다. 3. for문을 사용하..

article thumbnail
알잘딱깔센 GitHub - Ch 7. 그 외 명령어
Programming/Git 과 GitHub 2022. 9. 18. 23:11

이 글은 인프런의 "알잘딱깔센 GitHub" 강의를 듣고 정리한 내용입니다. 인프런 강의 링크 [무료] 30분 요약 강좌 시즌4 : 알잘딱깔센 GitHub - 인프런 | 강의알아서! 잘! 딱! 깔끔하고! 센스있게! 정리하는 GitHub 핵심 개념 책의 무료강의입니다. 해당 책과 Notion 링크도 무료로 다운로드 받을 수 있습니다. 비영리 프로젝트로 교재활용도 허락없이 가능합www.inflearn.com노션 링크 지금까지 배웠던 내용 이외에 협업할 때 자주 쓰는 명령어 5가지 (amend, stash, reset, revert, cherry-pick) 를 알아보자.amend기존의 커밋에 누락된 파일이나 수정된 파일을 추가할 때 사용한다.‘한 번 더 커밋 하면 되지’라고 생각할 수도 있지만, 같은 기능을 ..

article thumbnail
알잘딱깔센 GitHub - Ch 6. Pull Request
Programming/Git 과 GitHub 2022. 9. 18. 23:03

이 글은 인프런의 "알잘딱깔센 GitHub" 강의를 듣고 정리한 내용입니다. 인프런 강의 링크 [무료] 30분 요약 강좌 시즌4 : 알잘딱깔센 GitHub - 인프런 | 강의 알아서! 잘! 딱! 깔끔하고! 센스있게! 정리하는 GitHub 핵심 개념 책의 무료강의입니다. 해당 책과 Notion 링크도 무료로 다운로드 받을 수 있습니다. 비영리 프로젝트로 교재활용도 허락없이 가능합 www.inflearn.com 노션 링크 Git Pull Request란? 상대방의 저장소를 Fork한 후 원본 저장소에 올리고 싶을 때, 원본 저장소의 권한을 가진 사람에게 두 브랜치를 합치는 것을 허락해 달라고 요청을 보내야 한다. 이것을 Pull Request 또는 PR이라고 한다. PR은 원본 저장소에 보낼 수 있고 포크한..

article thumbnail
알잘딱깔센 GitHub - Ch 5. Fork
Programming/Git 과 GitHub 2022. 9. 18. 22:44

이 글은 인프런의 "알잘딱깔센 GitHub" 강의를 듣고 정리한 내용입니다.인프런 강의 링크 [무료] 30분 요약 강좌 시즌4 : 알잘딱깔센 GitHub - 인프런 | 강의알아서! 잘! 딱! 깔끔하고! 센스있게! 정리하는 GitHub 핵심 개념 책의 무료강의입니다. 해당 책과 Notion 링크도 무료로 다운로드 받을 수 있습니다. 비영리 프로젝트로 교재활용도 허락없이 가능합www.inflearn.com노션 링크 Fork란?포크는 개발자들이 하나의 소프트웨어 소스 코드를 통째로 복사하여 독립적인 새로운 소프트웨어를 개발하는 것을 말한다. 빙키와 개리가 만든 저장소가 있다. 이 저장소에 없는 기능을 알리가 만들고 싶어하지만 저장소의 권한은 빙키와 개리에게만 있고 알리에게는 없다. 이때, 저장소의 권한을 얻어..

article thumbnail
알잘딱깔센 GitHub - Ch 4. Branch
Programming/Git 과 GitHub 2022. 9. 18. 19:36

이 글은 인프런의 "알잘딱깔센 GitHub" 강의를 듣고 정리한 내용입니다. 인프런 강의 링크 [무료] 30분 요약 강좌 시즌4 : 알잘딱깔센 GitHub - 인프런 | 강의알아서! 잘! 딱! 깔끔하고! 센스있게! 정리하는 GitHub 핵심 개념 책의 무료강의입니다. 해당 책과 Notion 링크도 무료로 다운로드 받을 수 있습니다. 비영리 프로젝트로 교재활용도 허락없이 가능합www.inflearn.com노션 링크 Branch 사용하기개발 작업을 할 때, 개발자들은 작업 레파지토리에서 소스 코드를 공유한다. 연관성이 없는 기능을 개발한다고 할 때 어떤 개발자는 A 기능을 작업하고 또 다른 개발자는 B 기능을 맡아 작업한다고 가정해보자.만약 A 작업이 다 끝난 뒤에 B 작업을 수행한다면 연관성이 없는 기능 ..

article thumbnail
알잘딱깔센 GitHub - Ch 3. GitHub
Programming/Git 과 GitHub 2022. 9. 18. 14:07

이 글은 인프런의 "알잘딱깔센 GitHub" 강의를 듣고 정리한 내용입니다. 인프런 강의 링크 [무료] 30분 요약 강좌 시즌4 : 알잘딱깔센 GitHub - 인프런 | 강의 알아서! 잘! 딱! 깔끔하고! 센스있게! 정리하는 GitHub 핵심 개념 책의 무료강의입니다. 해당 책과 Notion 링크도 무료로 다운로드 받을 수 있습니다. 비영리 프로젝트로 교재활용도 허락없이 가능합 www.inflearn.com 노션 링크 GitHub 세팅 GitHub 가입하기 아래 페이지로 들어가 회원가입을 한다. https://github.com/ GitHub: Where the world builds software GitHub is where over 83 million developers shape the futur..

article thumbnail
[백준] 9019번 : DSLR - 자바[Java]

https://www.acmicpc.net/problem/9019 9019번: DSLR 네 개의 명령어 D, S, L, R 을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 www.acmicpc.net 풀이 A에서 B로 변환하기 위해 필요한 최소한의 명령어 나열을 구해야 하므로, BFS를 사용한다. 숫자의 중복 여부를 체크하기 위해 Map을 사용하고, 각 숫자마다 명령어 나열을 저장해야 하므로 Map에 (숫자, 명령어 나열)을 저장한다. 큐에는 숫자를 저장한다. 로직 (시간초과) 1. BFS를 수행할 dslr함수에서 int형 숫자를 저장하는 큐, (숫자, 명령어 나열)을 저장하는 H..

article thumbnail
[백준] 5014번 : 스타트링크 - 자바[Java]

https://www.acmicpc.net/problem/5014 5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net 풀이 처음에는 DFS를 사용하여 S층에서 G층으로 갈 수 있는 모든 경우를 구하고, 그 경우에서 최솟값을 구하려고 하였다. 하지만 시간초과가 떴다. 그래서 구글링을 한 결과 BFS와 방문배열를 사용하여 문제를 풀었다. 층의 방문 여부를 저장하는 방문 배열을 사용하지 않는다면 메모리 초과가 뜬다. 로직 1. BFS를 사용하여 S층에서 G층으로 가기 위해 눌러야 하는 버튼의 수의 최솟값을 구한다. 이 때 한 번 ..

article thumbnail
[백준] 1212번 : 8진수 2진수 - 자바[Java]

https://www.acmicpc.net/problem/1212 1212번: 8진수 2진수 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. www.acmicpc.net 풀이 처음에는 Integer 메서드를 사용하여 8진수 문자열 -> int -> 2진수 문자열 순서로 변환하여 문제를 풀 생각이었다. 하지만 입력으로 주어지는 수의 길이는 333,334 이기 때문에 숫자의 범위가 int형을 넘어서는 문제가 발생한다. long으로 타입을 바꿔줘도 런타임 에러(NumberFormat)가 발생한다. 이를 해결하기 위해 처음 String으로 입력받고 for문을 사용해 글자마다 글자 -> int -> 2진수 문자열로 바꾸는 로직을 작성한다. 8진수를 2진수로 변환하는 방법 -> 8..

article thumbnail
알잘딱깔센 GitHub - Ch 2. Git
Programming/Git 과 GitHub 2022. 9. 12. 20:01

이 글은 인프런의 "알잘딱깔센 GitHub" 강의를 듣고 정리한 내용입니다. 인프런 강의 링크 [무료] 30분 요약 강좌 시즌4 : 알잘딱깔센 GitHub - 인프런 | 강의알아서! 잘! 딱! 깔끔하고! 센스있게! 정리하는 GitHub 핵심 개념 책의 무료강의입니다. 해당 책과 Notion 링크도 무료로 다운로드 받을 수 있습니다. 비영리 프로젝트로 교재활용도 허락없이 가능합www.inflearn.com노션 링크 Git이란?Git은 소스코드 및 파일의 변경내역을 저장하는 분산 버전 관리 시스템이다.리눅스 커널을 만든 리누스 토발즈에 의해 처음 만들어졌다.GitHub, Bitbucket, Gitlab 등의 Git 기반 버전 관리 호스팅 서비스들이 있다.(무료, 공식) ProGit(유료) 팀 개발을 위한 G..

article thumbnail
알잘딱깔센 GitHub - Ch 1. Git & GitHub 기본 개념
Programming/Git 과 GitHub 2022. 9. 12. 18:58

이 글은 인프런의 "알잘딱깔센 GitHub" 강의를 듣고 정리한 내용입니다. 인프런 강의 링크 [무료] 30분 요약 강좌 시즌4 : 알잘딱깔센 GitHub - 인프런 | 강의 알아서! 잘! 딱! 깔끔하고! 센스있게! 정리하는 GitHub 핵심 개념 책의 무료강의입니다. 해당 책과 Notion 링크도 무료로 다운로드 받을 수 있습니다. 비영리 프로젝트로 교재활용도 허락없이 가능합 www.inflearn.com 노션 링크 Git과 GitHub의 가장 큰 차이 Git은 분산 버전 관리 시스템이며 GitHub은 Git을 관리하는 웹 서비스이다. Git은 내 컴퓨터에 설치되는 SW이며, GitHub은 웹 서비스이다. Git기반의 웹 서비스는 GitHub 뿐만 아니라 GitLab 등 다양한 소프트웨어가 있다. Gi..