Algorithm
11286번: 절대값 힙
https://www.acmicpc.net/problem/11286 11286번: 절댓값 힙 첫째 줄에 연산의 개수 N(1≤N≤100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 0이 아니라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net if(입력!=0) add(입력>0) (절대값,+1) add(입력 top에있는거 출력 -add 큐에 배열을 (절대값, 1) (절대값, -1)로 넣음 => 곱하면 원래값이 나오도록 -comparator 절대값이 같으면 -> 오리지날 값끼리 비교 -> 작은거 위로 절대값이 다르면-> 절대값끼리 비교 -> 작은거 위로 import java.io.BufferedReader; impor..
![2961번 : 도영이가 만든 맛있는 음식](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FszNPE%2FbtrJt4ZP4jZ%2FS8pK5q2dpqskKWKpuOHsH0%2Fimg.png)
2961번 : 도영이가 만든 맛있는 음식
https://www.acmicpc.net/problem/2961 2961번: 도영이가 만든 맛있는 음식 첫째 줄에 재료의 개수 N(1 ≤ N ≤ 10)이 주어진다. 다음 N개 줄에는 그 재료의 신맛과 쓴맛이 공백으로 구분되어 주어진다. 모든 재료를 사용해서 요리를 만들었을 때, 그 요리의 신맛과 쓴맛은 www.acmicpc.net * 트리문제 구현방법 1.매개변수로 합을 저장할 변수 make 2.재귀호출2개 1번: 현재값을 계산하고(선택하고) 호출, 요리 카운트++ 2번: 현재값을 (선택안하고) 계산안하고 호출, 요리 카운트그대로 참고 : depth가 깊이, 인덱스 역할도 함. cnt는 입력이 1쌍일때 정답이 무조건 1이되는 현상 방지 [(0,1,0,0)으로 호출하므로 차이가 1임] cnt(input_..
3040번: 백설 공주와 일곱 난쟁이
https://www.acmicpc.net/problem/3040 3040번: 백설 공주와 일곱 난쟁이 매일 매일 일곱 난쟁이는 광산으로 일을 하러 간다. 난쟁이가 일을 하는 동안 백설공주는 그들을 위해 저녁 식사를 준비한다. 백설공주는 의자 일곱개, 접시 일곱개, 나이프 일곱개를 준비한다. www.acmicpc.net 9C7로 조합생성 if(완성) if(합==100) answer에 깊은복사 return import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main_3040_유동훈 { static int[] r..
16926번: 배열돌리기1
https://www.acmicpc.net/problem/16926 16926번: 배열 돌리기 1 크기가 N×M인 배열이 있을 때, 배열을 돌려보려고 한다. 배열은 다음과 같이 반시계 방향으로 돌려야 한다. A[1][1] ← A[1][2] ← A[1][3] ← A[1][4] ← A[1][5] ↓ ↑ A[2][1] A[2][2] ← A[2][3] ← A[2][4] A[2][5] www.acmicpc.net 제한조건 : min(N,M)%2==0 -> 가로,세로가 짝수가 보장됨-> 아래,오,위,왼 못돌리는 경우 안들어옴 규칙발견 : min(N,M)/2 == 로테이션할 횟수 * swap 구현 방법1 temp1=이전값 temp2=현재값 현재값=temp1 temp1=temp2 ... * 의사코드 dr,dc=아래,오..
2563번 : 색종이
https://www.acmicpc.net/problem/2563 2563번: 색종이 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 www.acmicpc.net for(2차원배열순회) if(기존!=1) 값=1 count++ endif endfor import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Stack; import java.util.StringTokenizer; public class Main_2563_유동훈..
1861. 정사각형 방
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5LtJYKDzsDFAXc SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com * dfs 시작~끝까지 각각 들어가서 탐색함 ex) 1 2 3 4 1. 1에 가서 4방탐색 next구함 2.if(범위안 && next와 -현재값==1) count++ dfs(nextr,c) //2번에 들어가서 다시dfs하면서 count세기 . 1과 연결된 조건맞는애들 각각bfs한다 //조건에 맞는애가 없으면 return됨 import java.io.*; import java.util.*; publi..
![1233. [S/W 문제해결 기본] 9일차 - 사칙연산 유효성 검사](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbkm63O%2FbtrI6c5j5sO%2FjBuWtznlrkjT8hcZklnMq0%2Fimg.png)
1233. [S/W 문제해결 기본] 9일차 - 사칙연산 유효성 검사
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV141176AIwCFAYD SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com * 완전이진트리 (포화이진트리 포함) 정점의 개수 N =11 리프노드수=6개 리프노드아님개수 = 11-6=5(11/2) 결론 : N/2초과->리프노드다 노드) 연산자인경우:자식없음->연산불가 -> 부모노드에 와야함 숫자인경우:자식있음->연산불가 -> 리프노드에와야함 import java.util.LinkedList; import java.util.Queue; import java.util.Scann..