일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- USACO 2017 US Open Contest
- USACO 2016 January Contest
- scpc 예선
- USACO 2016 February Contest
- USACO 2017 January Contest
- USACO 2017 December Contest
- USACO 2017 February Contest
- scpc2017
- USACO 2016 December Contest
- scpc
- Today
- Total
목록분류 전체보기 (11)
CS's Blog
BronzeMilk Pails (Bronze)X를 몇 번 쓸지 Y를 몇 번 쓸지 전부다 결정해 준 후 최소 차이를 출력해주면 된다.sourceCircular Barn (Bronze)모든 위치에 구멍을 뚫어보는 식으로 해본 후 시뮬레이션을 돌리고 최소값을 출력해주면 된다.sourceLoad Balancing (Bronze)모든 (x, y)좌표에 대해 (x+1,y+1)에 교차점을 두고 각 사분면에 점이 몇개 있는지 세준 후에 최대값을 구해주면 된다. O(n^3)sourceSilverCircular Barn (Silver)최대 길이 n번 기다리고 n번 이동할 것이기 때문에 2n시간동안 시뮬레이션을 돌려주면 된다.sourceLoad Balancing (Silver)N^3에서 상수를 잘 조절하면 풀 수 있다.좌표..
BronzePromotion Counting플레티넘에 이전 응시수와 현재 응시수를 보면 몇 명이 골드에서 올라왔는지 알 수 있다.앞을 참고해 골드에 이전 응시수와 현재 응시수를 보면 몇 명이 실버에서 올라왔는지 알 수 있다.앞을 참고해 실버에 이전 응시수와 현재 응시수를 보면 몇 명이 브론즈에서 올라왔는지 알 수 있다.sourceAngry Cows (Bronze)시뮬레이션 해서 최대값을 구해주면 된다.sourceMowing the Field (Bronze)좌표제한이 -2천~2천이기 때문에 맵을 만들어서 처리해도 되지만 생각이 귀찮아서 set을 이용해 구현했다.시뮬레이션 하면서 각 좌표에 마지막에 방문한 시점을 저장해주자현재 방문한 점이 이전에 방문한적 있다면 시간의 차이를 답에 갱신해주자sourceSil..
BronzeSquare Pasture잘 정사각형으로 덮어주면 된다.sourceBlock Game각 카드에 대해 앞면과 뒷면에 대해 각 알파벳이 몇번 나왔는지 세주고,각 알파벳에 대해 최대값을 더해주면 꼭 준비해주어야 할 블럭의 수를 알 수 있다.sourceThe Cow-Signal다중 반복문 연습하면 된다.못 풀면 별찍기부터 다시 공부해야 한다.sourceSilverCounting Haybales각 건초더미들의 위치를 넘버링해서 set에 넣어준 후각 구간에 대해 s, e+1의 lowerbound를 구해준 후 처리해주면 된다.sourceCities and States앞에 두 글자에 대해 카운팅 해주면서 풀어주면 된다.문제에서 앞 두글자와 뒤 두글자가 같은 경우엔 카운팅 하지 않는다.sourceMoocast..
Bronze소가 길을 건너간 이유 1각 소들에 대해 마지막으로 입력된 위치를 저장하는 배열을 하나 만들어서입력이 될 때마다 마지막으로 입력된 위치와 다르다면 정답을 카운트해주면 된다.
BronzeDon't Be Last!두번째로 생산량이 많은 소를 구해주면 된다.sourceHoof, Paper, Scissors (Bronze)가능한 모든 조합을 결정해준 후 최대값을 출력해주면 된다. (3! = 6가지)이를 재귀를 이용하거나 for문을 중첩한 코드로 구현하면 코드가 복잡해지니 경우가 적은 점을 이용해서 배열에 미리 넣어준 후 처리해주자.sourceCow Tipping오른쪽 아래부터 1이면 뒤집는식으로 처리해주면 된다.두번 연산하면 원상태로 되돌아오기 때문에 1번 연산하거나 0번 연산하는것이 최선이다.sourceSilverCow Dance Showk가 가능하다면 k+1도 가능하다는 점을 이용해서파라메트릭서치를 이용해 극점을 찾아주면 된다.결정된 문제를 해결할 때 최소 힙을 활용하면 쉽게 ..
BronzeThe Lost Cowy를 만날 때 까지 시뮬레이션을 해주면 된다.범위가 작기 때문에 한 스텝씩 시뮬레이션 해도 충분히 시간내에 나온다.코드Bovine Genomics (Bronze)각 위치별로 점박이소의 A,C,G,T의 구성 / 일반소의 A,C,G,T의 구성을 구해준 후 겹치는 인덱스가 있는지 판단해주면 된다.비트연산을 이용하면 쉽게 코드를 구현할 수 있다.코드Modern Art (Bronze)각 색상별로 커버되는 최소 직사각형을 구해서 그 직사각형 내에 있는 색상들에 대해 답이 될 수 없다고 처리해준다.마지막에 답이될 수 있는 색상들에 개수를 카운트 해준 후 출력하면 해결된다.코드SilverPaired Up제일 값이 큰 소와 제일 값이 작은 소를 계속 매칭시켜주면 그게 최적이다.소들을 우유..
BronzeBlocked Billboard사각형의 정의역이 작다는 점에 주목해서 맵을 만들어서 해결sourceThe Bovine ShuffleThe Bovine Shuffle각 문자열들을 입력받은 후 a[a[a[i]]]번째 문자열이 정답sourceMilk MeasurementMilk Measurement각 문자열을 잘 넘버링 해준 후(string, map을 이용하면 편리함) 각 쿼리를 시간순서로 정렬같은 시간을 가지는 노트가 없기 때문에 최대값과 최대값의 개수를 이용해서 케이스를 나누어 해결하면 되는데저 부분을 못읽어서 n이 작다는 점을 이용해 최대값 리스트를 뽑아내는 식으로 해결sourceSilverMy Cow Ate My HomeworkMy Cow Ate My Homework 무조건 앞에서 부터 소가..
문제링크Description : N(
5문제중 4문제를 해결해서 800점 만점에 550점을 흭득하였다.5번문제는 읽고 어렵다고 생각해서 깊이 고민하지는 않았지만 만점자 수가 보여주듯이 어려운 문제로 보인다.생각을 잘못한 상태로 코딩하는 습관때문에 1번에서 4번, 2번에서 1번 틀린코드를 제출하였다. 조금 더 신중하게 코딩에 들어가는 연습을 해야겠다. 코드는 정말 못짰다. 5번풀이는 없다. 1. 괄호길이 n짜리 (,{,[,],},)으로 구성된 문자열이 입력으로 주어졌을때 가능한 모든 부 문자열중 가장 긴 올바른 괄호 문자열의 길이를 찾는 문제이다. (1
A,B,C,D를 해결했다. A. Rational Resistance GCD처럼 풀면된다. Code : #include int main() { long long int a, b; long long int ans = 0; scanf("%lld%lld", &a, &b); while (a>0&&b>0) { long long int c; ans += a / b; a %= b; a ^= b ^= a ^= b; } printf("%lld", ans); return 0; } B. Alternating Current 결국 ++이나 --는 없다고 생각해도 문제가 동치이기 때문에 스택을 이용해서 해결해주면 된다. Code :#include #include #include using namespace std; vectorst..