본문 바로가기

코딩 테스트63

[백준 1212] 8진수 2진수, C++ https://www.acmicpc.net/problem/1212 1212번: 8진수 2진수 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. www.acmicpc.net 본 문제는 8진수를 2진수로 변환하는 문제다. string으로 입력받는다. 2진수로 변환한다. 3자리 문자열로 2진수를 저장한다. 앞자리가 0이 아닐 때까지 찾는다. 출력 주의점 : 8진수 0이 입력되었을 때, 4의 과정 때문에 출력이 안된다. 따라서, 8진수 0을 예외 처리한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 .. 2020. 1. 13.
[백준 1373] 2진수 8진수, C++ https://www.acmicpc.net/problem/1373 1373번: 2진수 8진수 첫째 줄에 2진수가 주어진다. 주어지는 수의 길이는 1,000,000을 넘지 않는다. www.acmicpc.net 본 문제는 2진수를 8진수로 변환하는 문제다. 이때, string으로 변환해서 풀면 쉽게 풀린다. 프로그래머스에 이런 문제가 많아서 큰 도움이 됐다. string으로 입력 자릿수를 3으로 나누어 떨어지게 만들기 3자리씩 8진수로 변환하기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 #include #include #include #include #include using namespace std; in.. 2020. 1. 13.
[백준 17087] 숨바꼭질 6, C++ https://www.acmicpc.net/problem/17087 17087번: 숨바꼭질 6 수빈이는 동생 N명과 숨바꼭질을 하고 있다. 수빈이는 현재 점 S에 있고, 동생은 A1, A2, ..., AN에 있다. 수빈이는 걸어서 이동을 할 수 있다. 수빈이의 위치가 X일때 걷는다면 1초 후에 X+D나 X-D로 이동할 수 있다. 수빈이의 위치가 동생이 있는 위치와 같으면, 동생을 찾았다고 한다. 모든 동생을 찾기위해 D의 값을 정하려고 한다. 가능한 D의 최댓값을 구해보자. www.acmicpc.net 본 문제는 수빈이가 동생 N명을 찾는 문제다. 수빈이의 위치를 X라고 했을 때, X+D, X-D로 이동할 수 있다. 따라서, 동생과 수빈이의 위치의 차를 구해야 하고, D의 최댓값을 구해야 하므로 수빈이의.. 2020. 1. 13.
[백준 9613] GCD 합, C++ https://www.acmicpc.net/problem/9613 9613번: GCD 합 문제 양의 정수 n개가 주어졌을 때, 가능한 모든 쌍의 GCD의 합을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 t (1 ≤ t ≤ 100)이 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있다. 각 테스트 케이스는 수의 개수 n (1 < n ≤ 100)가 주어지고, 다음에는 n개의 수가 주어진다. 입력으로 주어지는 수는 1000000을 넘지 않는다. 출력 각 테스트 케이스마다 가능한 모든 쌍의 GCD의 합을 출력한다. 예제 입 www.acmicpc.net 본 문제는 2013 ACM-ICPC Asia Phuket Regional Programming Contest PE번 문제로 양의 정수 .. 2020. 1. 13.
[백준] 2225 - 합분해, C++ https://www.acmicpc.net/problem/2225 2225번: 합분해 첫째 줄에 답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net 본 문제는 0 ~ N까지 정수 K개를 더해서 그 합이 N이 되는 경우의 수를 구하는 문제다. 덧셈의 순서가 바뀐 경우는 다른 경우로 센다(1+2와 2+1은 서로 다른 경우). 큰 문제를 작은문제로 나누어 해결할 수 있기 때문에 DP문제이고, d[n][k] = d[n-0][k-1] + d[n-1][k-1] + d[n-2][k-1] + ... + d[n-n][k-1] 으로 점화식을 정의 할 수 있다. Bottom-up 방법을 사용하였고, 미지수가 3개이므로 3중 for문을 사용했다. 사실 DP를 풀기전에 완전탐색을 이용하여 해.. 2020. 1. 13.
[백준] 1699 - 제곱수의 합, C++ https://www.acmicpc.net/problem/1699 1699번: 제곱수의 합 어떤 자연수 N은 그보다 작거나 같은 제곱수들의 합으로 나타낼 수 있다. 예를 들어 11=32+12+12(3개 항)이다. 이런 표현방법은 여러 가지가 될 수 있는데, 11의 경우 11=22+22+12+12+12(5개 항)도 가능하다. 이 경우, 수학자 숌크라테스는 “11은 3개 항의 제곱수 합으로 표현할 수 있다.”라고 말한다. 또한 11은 그보다 적은 항의 제곱수 합으로 표현할 수 없으므로, 11을 그 합으로써 표현할 수 있는 제곱수 항의 최소 개수는 www.acmicpc.net 본 문제는200 7 ICPC Seoul Nationalwide Internet Competition E번 문제로 주어진 자연수 N을 제.. 2020. 1. 12.