728x90

문제 풀이 188

백준] 1547 - 공

시간 제한 : 2초메모리 제한 : 128MB 입력첫째 줄에 컵의 위치를 바꾼 횟수 M이 주어지며, M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 M개의 줄에는 컵의 위치를 바꾼 방법 X와 Y가 주어지며, X번 컵과 Y번 컵의 위치를 서로 바꾸는 것을 의미한다. 컵을 이동시키는 중에 공이 컵에서 빠져나오는 경우는 없다. X와 Y의 값은 3보다 작거나 같고, X와 Y가 같을 수도 있다. 출력첫째 줄에 공이 들어있는 컵의 번호를 출력한다. 공이 사라져서 컵 밑에 없는 경우에는 -1을 출력한다. 소스코드 #include using namespace std; int main(void) { int m, loc = 1, x, y; cin >> m; while (m--) { cin >> x >> y; if (x ..

백준] 10610 - 30(COCI 2014/2015)

시간 제한 : 1초메모리 제한 : 32MB 입력N을 입력받는다. N는 최대 10^5개의 숫자로 구성되어 있다. 출력미르코가 만들고 싶어하는 수가 존재한다면 그 수를 출력하라. 그 수가 존재하지 않는다면, -1을 출력하라. 소스코드 #include #include #include using namespace std; int main(void) { char arr[100001]; int cnt = 0, len, tmp, sum = 0; cin >> arr; len = strlen(arr); for (int i = 0; i < len; i++) { if (arr[i] == '0') cnt++; else sum += (int)(char)(arr[i] - '0'); } if (cnt == 0) cout = 0; ..

백준] 3036 - 링(COCI 2006/2007)

시간 제한 : 1초메모리 제한 : 128MB 입력첫째 줄에 링의 개수 N이 주어진다. (3 ≤ N ≤ 100) 다음 줄에는 링의 반지름이 상근이가 바닥에 놓은 순서대로 주어진다. 반지름은 1과 1000를 포함하는 사이의 자연수이다. 출력출력은 총 N-1줄을 해야 한다. 첫 번째 링을 제외한 각각의 링에 대해서, 첫 번째 링을 한 바퀴 돌리면 그 링은 몇 바퀴 도는지 기약 분수 형태 A/B로 출력한다. 소스코드 #include using namespace std; int gcd(int a, int b) { if (b == 0) return a; else return gcd(b, a%b); } int main(void) { int n, left, g; int arr[100]; cin >> n >> left;..

백준] 9517 - 아이 러브 크로아티아(COCI 2013/2014)

시간 제한 : 1초메모리 제한 : 128MB 입력첫째 줄에 게임이 시작했을 때 폭탄을 들고 있는 사람의 번호 K (1 ≤ K ≤ 8)가 주어진다. 둘째 줄에는 질문의 개수 N (1 ≤ N ≤ 100)이 주어진다. 다음 N개 줄에는 i번째 질문을 대답하기까지 걸린 시간(단위: 초) T (1 ≤ T ≤ 100), 그 플레이어의 대답 Z (T, N, P중 하나) 가 주어진다. 출력폭탄을 터뜨린 사람의 번호를 출력한다. 소스코드 #include using namespace std; int main(void) { int k, n, time = 210, ans, t; char z; bool check = false; cin >> k >> n; for (int i = 0; i > t >..

백준] 5724 - 파인만(ACM-ICPC Regional)

시간 제한 : 1초메모리 제한 : 128MB 입력입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, 그리드 한 변에 있는 정사각형의 개수 N이 주어진다. (1 ≤ N ≤ 100) 입력의 마지막 줄에는 0이 하나 주어진다. 출력각 테스트 케이스에 대해서, 한 줄에 하나씩 서로 다른 정사각형의 개수를 출력한다. 소스코드 #include using namespace std; int main(void) { int n; while (1) { cin >> n; if (n == 0) break; cout

백준] 3040 - 백설 공주와 일곱 난쟁이(COCI 2006/2007)

시간 제한 : 1초메모리 제한 : 128MB 입력총 아홉개 줄에 1보다 크거나 같고 99보다 작거나 같은 자연수가 주어진다. 모든 숫자는 서로 다르다. 또, 항상 답이 유일한 경우만 입력으로 주어진다. 출력일곱 난쟁이가 쓴 모자에 써 있는 수를 한 줄에 하나씩 출력한다. 소스코드 #include using namespace std; int main(void) { int arr[9], sum = 0; for (int i = 0; i > arr[i]; sum += arr[i]; } for (int i = 0; i < 8; i++) { for (int j = i + 1; j < 9; j++) { if (sum - arr[i] - arr[j] == 100) { for (int k ..

백준] 1302 - 베스트셀러

시간 제한 : 2초메모리 제한 : 128MB 입력첫째 줄에 오늘 하루 동안 팔린 책의 개수 N이 주어진다. 이 값은 1,000보다 작거나 같은 자연수이다. 둘째부터 N개의 줄에 책의 제목이 입력으로 들어온다. 책의 제목의 길이는 50보다 작거나 같고, 알파벳 소문자로만 이루어져 있다. 출력첫째 줄에 가장 많이 팔린 책의 제목을 출력한다. 만약 가장 많이 팔린 책이 여러 개일 경우에는 사전 순으로 가장 앞서는 제목을 출력한다. 소스코드 #include #include #include #include using namespace std; struct book { string name; int sold; }; bool compare(const struct book a, const struct book b) {..

백준] 1735 - 분수 합

시간 제한 : 2초메모리 제한 : 128MB 입력첫째 줄과 둘째 줄에, 각 분수의 분자와 분모를 뜻하는 두 개의 자연수가 순서대로 주어진다. 입력되는 네 자연수는 모두 30,000 이하이다. 출력첫째 줄에 구하고자 하는 기약분수의 분자와 분모를 뜻하는 두 개의 자연수를 빈 칸을 사이에 두고 순서대로 출력한다. 소스코드 #include using namespace std; int gcd(int a, int b) { if (b == 0) return a; else gcd(b, a%b); } int main(void) { int a1, a2, b1, b2, lcm, sum, ki; cin >> a1 >> a2; cin >> b1 >> b2; if (a2 > b2) lcm = gcd(a2, b2); else l..

728x90