728x90
반응형

전체 글 225

[백준/DP/C++] 1149번 RGB거리 *

문제는 여기! #include using namespace std; int N; int cost[3]; int house[1001][3]; void input() { cin >> N; for(int i=0; i> cost[0] >> cost[1] >> cost[2]; if(i==0){ house[0][0] = cost[0]; house[0][1] = cost[1]; house[0][2] = cost[2]; } else { house[i][0] = min(house[i-1][1], house[i-1][2]) + cost[0]; house[i][1] = min(house[i-1][0], house[i-1][2]) + cost[1]; house[i][2] = min(house[i-1][0], house[i-1..

[백준/DP/C++] 1463번 1로 만들기

문제는 여기! 문제 해결 방법 DP[n] : n을 만드는데 사용되는 연산의 최소 횟수 로 정하고 Dp{1] = 0,DP[2] = 1, DP[3] = 1, 나머지는 N으로 초기화를 했다. 그리고 n이 3으로 나누어 떨어지면 DP[n]과 DP[n/3]+1 의 최소값을 비교해서 DP[n]에 입력, n이 2로 나누어 떨어지면 DP[n]과 DP[n/2]+1 의 최소값을 비교해서 DP[n]에 입력, DP[n]과 DP[n-1]+1 의 최소값을 비교해서 DP[n]에 입력해서 문제를 해결했다. #include using namespace std; int N; int dp[1000001]; void solve(){ for(int i=4; i> N; fill(dp, dp+N+1, N); dp[1] = 0; dp[2] = 1..

[백준/구현/BFS&DFS/C++] 2573번 빙산

https://www.acmicpc.net/problem/2573 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 www.acmicpc.net 문제 해결 방법 수도코드로 표현하면 아래처럼 표현할 수 있다. while(1){ if(빙하의 개수==0) break; 빙하 덩어리 수 세기(); if(빙하 덩어리수 > 1) break; else 빙하 녹이기(); } 그리고 크게 구현할 것은 아래 3가지 이다. 1. 빙하마다 바다에 둘러싸인 면의 수 구하기 2. 한번에 녹이기 3. 덩어리 수 세기 우선 입력받을 때 빙하는 queue에 넣어주었..

[Git] ssh를 이용해서 원격저장소 사용하기

커맨드창에 아래 명령어를 입력한다 $ssh-keygen 그리고 저 체크된 주소로 이동해준다 ~ssh 주소에는 id_rsa파일과 id_rsa.pub 파일 두개가 생기는데 id_rsa는 개인키, id_rsa.pub는 공개키로 pub를 원격저장소에 등록해준다 $cat id_rsa.pub 을 해서 아래 나온 key값을 복사한다 github 페이지에서 settings로 이동! SSH and GPG keys 탭에서 New SSH Key 를 클릭한다 title과 복사한 key를 입력해준다 그럼 설정은 끝이다! 레파지토리를 하나 만들어서 ssh를 클릭해서 나온 주소로 clone한 뒤 커밋을 해보면 잘 연결되는 것을 알 수 있다

Git 2023.02.08

[백준/구현/백트래킹/C++] 17406번 배열 돌리기 4 (삼성 코딩테스트)

https://www.acmicpc.net/problem/17406 17406번: 배열 돌리기 4 크기가 N×M 크기인 배열 A가 있을때, 배열 A의 값은 각 행에 있는 모든 수의 합 중 최솟값을 의미한다. 배열 A가 아래와 같은 경우 1행의 합은 6, 2행의 합은 4, 3행의 합은 15이다. 따라서, 배열 A의 www.acmicpc.net 문제 해결 방법 1. 회전연산의 순서 정하기 (수열 : 백트래킹) 2. 회전연산 구현 (재귀) 3. 배열 A의 값 구하기 크게 3가지로 나눌 수 있다. 먼저 회전 연산의 순서를 정하기 위해 백트래킹을 이용했다. // 회전연산 순서 정하기 void setOrder(int cnt){ if(cnt == K){ solve(); return; } for(int i=0; ic-..

[javascript] enter 키 이벤트 (keycode, keyboardEvent)

input 태그에 값을 입력한 뒤 엔터를 치면 이벤트가 실행되도록 만들었다. function enterKey() { if (window.event.keyCode == 13) { getSearch(); } } 엔터키 이벤트를 만들고 엔터키가 눌리면 실행 될 함수를 적어준다. 키코드 설명을 보면 enter의 키코드는 13인 것을 알 수 있다. 그리고 input 태그 안에 onkeyup 이벤트로 넣어주었다. 키보드이벤트 는 3가지가 있다 onkeydown : 키가 눌렸을 때 발생 onkeypress : 키가 눌린 상태일 때 (사용이 권장되지 않습니다.) onkeyup : 키 누름이 해제될 때 onkeydown 은 이벤트 발생 후 문자가 입력되고, onkeyup 은 문자 입력 후 이벤트가 발생해 onkeyup을..

기타 2023.02.07

[Git] merge conflict 시 사용하는 툴 kdiff3 설치, 사용방법

https://kdiff3.sourceforge.net/ KDiff3 - Homepage News Features Screenshots Project At Sourceforge Licence: GPL Download Documentation Questions and Answers Abstract (PDF) KDiff3 on Debian Donations Links Current version (in this repository): 0.9.98 (2014-07-04) For information reg kdiff3.sourceforge.net 좌측에 다운로드를 눌러준다 최신버전인 초록색 버튼을 눌러준다 커맨드창에서 툴을 설치해주고 $git config --global merge.tool kdiff3 Aut..

Git 2023.02.07

[백준/구현/C++] 17281번 야구*

https://www.acmicpc.net/problem/17281 17281번: ⚾ ⚾는 9명으로 이루어진 두 팀이 공격과 수비를 번갈아 하는 게임이다. 하나의 이닝은 공격과 수비로 이루어져 있고, 총 N이닝 동안 게임을 진행해야 한다. 한 이닝에 3아웃이 발생하면 이닝이 종 www.acmicpc.net #include #define MAX 51 #define PLAYER_NUM 10 using namespace std; int N, answer; int Order[PLAYER_NUM]; int Game[MAX][PLAYER_NUM]; bool selected[PLAYER_NUM]; vector v; void play_the_game(){ int score = 0; int start_player = 1..

728x90
반응형