목록알고리즘 문제풀기/백준(Acmicpc) (21)
문제링크 : https://www.acmicpc.net/problem/17136 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394#include using namespace std; int arr[10][10];bool visited[10][10];int result = 25;bool finishFlag = false;int min(int a, int b) { if (a > b) return b; else return a;}int che..
문제링크 : https://www.acmicpc.net/problem/17071 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354#include #include using namespace std;bool visited[2][500001] = { false }; // 홀수번째 짝수번째 따로(진동 가능)int main(void) { int startC; int startB; cin >> startB >> startC; queue myQ; myQ.push(startB); visited[0][startB] = true; int turn = 1; if (startC == startB)..
문제링크 : https://www.acmicpc.net/problem/7569 - 소스 코드 - 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495import java.util.LinkedList;import java.util.Queue;import java.util.Scanner; public class Main { static int map[][][]; static Queue myQ; static int dx[] = { 0, 0, ..
문제링크 : https://www.acmicpc.net/problem/16987 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475import java.util.Scanner; // 16986 인싸들의 가위바위보 문제와 마찬가지로 dfs를 통한 완전탐색으로 해결했다.// 처음 문제를 접했을 때 이걸 어떻게 해결하지 했다가 N이 최대 8이라는 것을 보고 바로 접근! public class Main { static int N; static int eggCount=0; static class Egg{ int w..
문제링크 : https://www.acmicpc.net/problem/16986 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123import java.util.Scanner; // 손가락 가지수가 최대 9개입니다.// 즉, 지우가 낼 수 있는 가지수가 9개 뿐이므로 아무리 많아도 9!개의 가지..
문제링크 : https://www.acmicpc.net/problem/1322 - 소스 코드 - 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849/* * 시간복잡도 : O(logN) [ N은 K입니다. ] * 공간복잡도 : O(logN) [arrayList] * * x+?가 x|?이기 위해서는 x의 비트가 0인 부분들로 구성되어야 합니다. * ex) x=101(2) ?=10(2) * 그래서 1부터 2씩 곱하면서 x의 해당 비트가 0일 경우 * ArrayList에 그 비트가 나타내는 수치를 저장했습니다. * 2^(arr.size)를 해준 이유는 이진수에서는 해당 자리가 0,1인 경우의 수 2가지가..
문제링크 : https://www.acmicpc.net/problem/15711 테스트케이스 수(1