Git이란 Version Control System 프로그램의 버전 관리를 위한 툴 CLI vs GUI Git에서 뭔가를 실행하기 위한 어떤 명령어들을 사용할 때 CLI 사용 프로젝트의 상태를 Git상에서 자세히 살펴보아야 할 때 GUI 사용 Git 최초 설정 git config --global user.name "J3SUNG" git config --global user.email "wptjd6141@naver.com" 설정 확인 git config --list git config --global user.name git config --global user.email 기본 브랜치명 변경 git config --global init.defaultBranch main git init .git 폴더가 생성..

수열이 N개 존재할때 N-1개의 연산자가 주어집니다. 각 연산자를 활용해서 최소값 최대값을 출력하는 문제입니다. DFS로 모든 경우의 수에 대해서 확인하고 최소값 최대값을 도출해냈습니다. import java.util.Scanner; public class Main{ static int n; static int minAns = 987654321; static int maxAns = -987654321; static int[] arr; public static void main(String[] args){ Scanner sc = new Scanner(System.in); n = sc.nextInt(); arr = new int[n]; int[] ope = new int[4]; for(int i=0; i

빌딩의 왼쪽 2건물과 오른쪽 2건물에 공간이 없는 층들을 조망권이라고 할 때 조망권에 해당하는 세대 수를 찾는 문제입니다. 모든 건물을 확인하고 각 건물의 왼쪽 2건물과 오른쪽 2건물이 해당 건물보다 작은지 확인 한 후 더 작을 경우 4개의 건물 중 가장 큰 값을 현재 건물에 뺀 값을 결과값에 더하는 식으로 답을 도출했습니다. import java.util.Scanner; import java.io.FileInputStream; class Solution { public static void main(String args[]) throws Exception { Scanner sc = new Scanner(System.in); int T = 10; for(int test_case = 1; test_case..

n개의 귤 중 k개를 판매하려고 합니다. 이 때 각 귤들의 크기가 있는데 종류가 가장 적게 했을 떄의 결과값을 출력하는 문제입니다. 그리디 문제로 크기에 따라 개수를 내림차순으로 정렬해줍니다. 정렬된 값에서 차례대로 개수를 더해서 k와 같거나 커지면 카운트한 값을 출력해줍니다. function solution(k, tangerine) { let answer = 0; let obj = {}; tangerine.forEach((i) =>{ obj[i] = ++obj[i] || 1; }); const sortObj = Object.values(obj).sort((x, y) => y- x); let sum = 0; for(let num of sortObj){ ++answer; sum += num; if(k

Java란 썬 마이크로시스템즈의 제임스 고슬링과 다른 연구원들이 개발한 객체 지향적 프로그래밍 언어 Java의 특징 운영체제에 독립적으로 동작 객체 지향 언어 (캡슐화, 상속성, 다형성) 가비지 컬렉터를 통한 자동 메모리 관리 네트워크, 분산처리의 지원 멀티쓰레드 지원 동적 로딩의 지원 변수(Variable) 이란? 자료를 저장하기 위한 메모리 공간으로 타입에 따라 크기가 달라짐 메모리 공간에 값을 할당 후 사용 기본형 (primitive type) 미리 정해진 크기의 Memory Sisze로 표현 변수 자체에 값 저장 참조형 (reference type) 크기가 미리 정해질 수 없는 데이터의 표현 변수에는 실제 값을 참조할 수 잇는 주소만 저장 기본형의 크기 * Java는 semi boolean을 처리..

짝수의 사람들을 2팀으로 나누었을때 능력치가 비슷하게 구성하는 문제입니다. 능력치는 어떤 사람과 팀이되었냐에 따라 수치가 달라집니다. 최대 인원이 20명이므로 DFS 방식으로 모든 경우의 수를 확인해서 각 팀의 능력치의 차가 가장 적은것을 출력해주었습니다. #include #include #include #include using namespace std; int n; int ans = 987654321; vector v; void dfs(int loc, int c, int bit) { if(c == n/2){ int a = 0; int b = 0; for(int i=0; i

사각형의 변의 길이 N이 주어졌을때 가장 넓은 평행사변형의 넓이를 구하는 문제입니다. N*N이 가장 큰 경우이므로 출력해주었습니다. import java.util.Scanner; import java.io.FileInputStream; class Solution { public static void main(String args[]) throws Exception { Scanner sc = new Scanner(System.in); int T; T=sc.nextInt(); for(int test_case = 1; test_case

양팔저울에 놓을 수 있는 경우의 수를 구하는 문제입니다. 특별한 사항으로 무게를 재는 도중에 저울의 오른쪽이 왼쪽보다 무거워져서는 안됩니다. DFS방식으로 모든 조합을 확인합니다. DFS 중에 저울이 오른쪽이 왼쪽보다 커지는 경우 가지치기를 해주었습니다. import java.util.Scanner; import java.io.FileInputStream; class Solution { public static int dfs(int[] arr, int left, int right, int c, int n, int bit) { int ans = 0; if(right > left){ return ans; } if(c == n){ ++ans; return ans; } for(int i=0; i