728x90
728x90

algorithm 230

백준] 1864 - 문어 숫자(ACM-ICPC Regionals)

시간 제한 : 1초메모리 제한 : 128MB 입력한 줄에 하나씩 문어 숫자가 입력으로 주어진다. 각 숫자는 최소 한 개, 최대 여덟 개의 문어 숫자 기호로 이루어져있다. 입력으로 '#'이 들어오면 입력을 종료한다. 출력입력 받은 문어 숫자에 대응하는 십진수를 한 줄에 하나씩 출력한다. 소스코드#include #include #include using namespace std; int main(void) { while (1) { int len; long long ans = 0; string str; cin >> str; if (str == "#") break; len = str.length(); for (int i = 1; i

백준] 2436 - 공약수(한국정보올림피아드 2011, KOI 2011 전국본선)

시간 제한 : 1초메모리 제한 : 128MB 입력첫째 줄에 두 개의 자연수가 빈칸을 사이에 두고 주어진다. 첫 번째 수는 어떤 두 개의 자연수의 최대공약수이고, 두 번째 수는 그 자연수들의 최소공배수이다. 입력되는 두 자연수는 2 이상 100,000,000 이하이다. 출력첫째 줄에는 입력되는 두 자연수를 최대공약수와 최소공배수로 하는 두 개의 자연수를 크기가 작은 수부터 하나의 공백을 사이에 두고 출력한다. 입력되는 두 자연수를 최대공약수와 최소공배수로 하는 두 개의 자연수 쌍이 여러 개 있는 경우에는 두 자연수의 합이 최소가 되는 두 수를 출력한다. 소스코드#include #include using namespace std; int gcd(int a, int b) { if (a < b) return g..

백준] 4597 - 패리티(ACM-ICPC Regionals)

시간 제한 : 1초메모리 제한 : 128MB 입력입력은 여러 개의 비트 스트링으로 이루어져 있다. 각 비트 스트링은 한 줄로 이루어져 있고, 길이는 1~31비트이다. 또, 비트 스트링의 마지막 문자는 e 또는 o이다. (e: 짝수 패리티, o: 홀수 패리티) 마지막 줄에는 '#'이 주어진다. 출력입력으로 주어진 각각의 비트 스트링에 대해서, 마지막 문자를 올바른 비트로 바꾼 비트 스트링을 출력한다. 소스코드 #include #include using namespace std; int main(void) { while (1) { int one = 0, len; string str; cin >> str; if (str == "#") break; len = str.length(); for (int i = 0;..

백준] 1731 - 추론

시간 제한 : 2초메모리 제한 : 128MB 입력첫째 줄에 수열의 길이 N이 주어진다. 둘째 줄부터 N개의 줄에 수열의 각 원소가 차례대로 주어진다. 주어지는 수열은 등차수열이나 등비수열 중에 하나다. N은 항상 3 이상 50이하이며, 입력되는 수는 10^6 이하의 자연수이다. 출력첫째 줄에 수열의 다음 원소를 출력한다. 이 수는 20억보다 작거나 같다. 소스코드 #include #include using namespace std; int main(void) { int n; long long q, next; cin >> n; vector arr(n); for (int i = 0; i > arr[i]; if (arr[0] * arr[2] == arr[1] * arr[1]) { q..

백준] 1992 - 쿼드트리

시간 제한 : 2초메모리 제한 : 128MB 입력첫째 줄에는 영상의 크기를 나타내는 숫자 N 이 주어진다. N 은 언제나 2의 제곱수로 주어지며, 1≤N ≤64의 범위를 가진다. 두 번째 줄부터는 길이 N 의 문자열이 N 개 들어온다. 각 문자열은 0 또는 1의 숫자로 이루어져 있으며, 영상의 각 점들을 나타낸다. 출력영상을 압축한 결과를 출력한다. 소스코드#include #include #include using namespace std; vector tree; void quadtree(int row, int col, int n) { if (n == 1) { cout input[i]; for (int i = 0; i < n; i++) { tree.push_back(vector(n, 0)); for (i..

백준] 7568 - 덩치(한국정보올림피아드 2013;KOI 2013 지역본선)

시간 제한 : 1초메모리 제한 : 128MB 입력첫 줄에는 전체 사람의 수 N이 주어진다. 그리고 이어지는 N개의 줄에는 각 사람의 몸무게와 키를 나타내는 양의 정수 x와 y가 하나의 공백을 두고 각각 나타난다. 단, 2 ≤ N ≤ 50, 10 ≤ x,y ≤ 200 이다. 출력여러분은 입력에 나열된 사람의 덩치 등수를 구해서 그 순서대로 첫 줄에 출력해야 한다. 단 각 덩치 등수는 공백문자로 분리되어야 한다. 소스코드#include #include #include using namespace std; struct person { int weight; int height; int bigger; int originIdx; }; int compareBigger(const struct person a, cons..

백준] 6160 - Election Time(USACO 2008)

시간 제한 : 1초메모리 제한 : 128MB 입력Line 1: Two space-separated integers: N and KLines 2..N+1: Line i+1 contains two space-separated integers: A_i and B_i 출력Line 1: The index of the cow that is expected to win the election. 소스코드 #include #include #include using namespace std; struct cow { int first; int second; int originIdx; }; bool compare(const struct cow &a, const struct cow &b) { return a.first > b...

728x90