목록문제 풀이/코딩 문제 풀이 모음 (34)
컴공댕이 공부일지
백준 11650번 좌표 정렬하기(실버 5) https://www.acmicpc.net/problem/11650 (정답 코드)#include #include #include using namespace std;typedef pair p;// & : 레퍼런스// const : 상수// 비교함수 정의bool cmp (const p &a, const p &b) { if(a.first!=b.first) { return a.first & xy) { // 참조를 이용한 전달. 벡터 직접 수정 가능 sort(xy.begin(), xy.end(), cmp); }int main(){ ios::sync_with_stdio(false); cin.tie(NULL);..

백준 15685 드래곤 커브 (골드 3) 문제링크 https://www.acmicpc.net/problem/15685 15685번: 드래곤 커브 첫째 줄에 드래곤 커브의 개수 N(1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 드래곤 커브의 정보가 주어진다. 드래곤 커브의 정보는 네 정수 x, y, d, g로 이루어져 있다. x와 y는 드래곤 커 www.acmicpc.net (정답 코드) #include #include using namespace std; const int MAX_SIZE = 100; //맵은 최대 100,100 bool visited [MAX_SIZE+1][MAX_SIZE+1]={false,}; int dx[4] = {1, 0, -1, 0}; int dy[4] = {0, ..
1476 : [기초-배열연습] 2차원 배열 빗금 채우기 3-1 https://www.codeup.kr/problem.php?id=1476&rid=0 [기초-배열연습] 2차원 배열 빗금 채우기 3-1 다음과 같은 n*m 배열 구조를 출력해보자. 입력이 3 4인 경우 다음과 같이 출력한다. 1 3 6 9 2 5 8 11 4 7 10 12 입력이 4 5인 경우는 다음과 같이 출력한다. 1 3 6 10 14 2 5 9 13 17 4 8 12 16 19 7 11 15 18 20 입력이 www.codeup.kr (정답 코드) import java.util.Scanner; public class 빗금채우기이 { public static void main(String[] args) { Scanner s = new Sc..
백준 2798번 블랙잭 (브론즈 2) https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net (정답 코드) import java.util.Scanner; public class Main { public static void QuikSort(int a[], int left, int right) { int pl=left; int pr=right; int x=a[(pl+pr)/2]; do { while(a[pl]x) pr--..
백준 7568번 덩치 (실버 5) https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net (정답 코드) import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner s = new Scanner(System.in); int n = s.nextInt(); int [][] 덩치 = new int[2][n]; int [] count = n..
2231번 분해합 (브론즈2) https://www.acmicpc.net/problem/2231 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net * 문제 요약 특정 수의 분해합 생성자를 찾는 문제이다. 분해합이란 해당 숫자 + 각 자릿수의 합이다 245의 분해합은 245+2+4+5로 256이 된다. 그러면 245는 256의 생성자가 된다. * 풀이 요약 단순 브루투포스 알고리즘 문제이다. 그냥 for 반복문으로 1부터 n까지의 분해합을 구하다가, 생성자를 찾으면 break 하는 식..
목차 #문제 및 내 풀이 소개 #배열의 복사 a. System.copyArray b. Arrays.copyOf c. Arrays.copyOfRange #배열의 정렬 a. sort() b.버블 정렬 c.퀵 정렬 📚 프로그래머스 K번째수 https://school.programmers.co.kr/learn/courses/30/lessons/42748 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 배열의 특정 구간을 뽑아 복사하는 문제! 나의 정답 코드 (copyArray, 버블 정렬 활용) class Solution { public int[] solution..

https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 첫 접근이 완전히 틀려먹어 쉬운 문제인데 애를 먹었다. 첫 번 째 접근, {1,1,1,3,3,0,1}의 경우, 인덱스 0(i)과 1(i+j), 인덱스 0(i)과 2(i+j)는 중복되니 거르고, 그 다음 조사할 값은 0(i)+2(i+j)에 +1을 해준 3번 인덱스 값이다. 그리고 다시 또 j=1로 초기화 한 후, 인덱스 3(i)과 4(i+j)가 겹친다... 이런식이었다... i j 등의 인덱스를 저..

백준 11050 이항계수 1 브론즈 1 https://www.acmicpc.net/problem/11050 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 사실 위 문제는 단순히 그냥 nCk 구하기만 하면 되는 문제이다. 근데 확통 너무 오랜만이라 순열 조합조차 새로워서...ㅎㅎ 이항 정리에 대해 간단히 알아보았다. 이항정리 또한 순열 식을 계산해 출력하기 위해서 팩토리얼을 계산해야 하는데, 이 때 재귀 함수를 활용했다! :) 팩토리얼은 재귀 함수 계산 예제로 매번 나오는 기초기에..ㅎㅎ 가볍게 구현해보았다. 정답코드 import java.util.Scanner; public class..
백준 2292 벌집 브론즈 2 https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 1 : 1 1과 1칸 떨어진 곳 : 2~7 1과 2칸 떨어진 곳 : 8~19 1과 3칸 떨어진 곳 : 20~37 1과 4칸 떨어진 곳 : 38~61 규칙성을 찾았다! 2,8,20,38~ 식을 세워보면 2+6+12+18~ = 2 + ∑6k = 3x^2 + 3x + 2 정답 코드 import java.util.Scanner; public class Main { public sta..