Codeforces

· Codeforces
A. Turtle Puzzle: Rearrange and Negate (1분) 가능한 연산은 다음과 같습니다. 수열 $a$를 임의로 재정렬 $1 \leq l \leq r \leq n$인 구간에 대해 부호를 바꿈. (음수 -> 양수, 양수 -> 음수) 재정렬이 가능하므로 음수를 한쪽에 몰아넣고 음수들의 모든 부호를 바꾸면 됩니다. 입력으로 음수가 들어오면 양수로 바꿔주면 됩니다. B. Turtle Math: Fast Three Task (8분) $a$의 합을 3으로 나눈 나머지가 $0$이 되도록 다음 연산을 반복해서 수행할 수 있습니다. $a$의 임의의 원소를 제거 $a$의 임의의 원소에 $1$을 더함 따라서 다음 경우로 나눠볼 수 있습니다. 현재 합의 나머지가 $0$인 경우 연산이 필요 없습니다. 따라서..
· Codeforces
A. Thorns and Coins 그리디적으로 접근하는 문제입니다. 왼쪽부터 차례대로 $1$칸 혹은 $2$칸을 움직일 수 있으며, 가시가 있는 곳으로의 이동은 불가능하다고 할때, $i$번째 칸까지 먹은 코인의 개수를 $S_{i}$라고 하고, $i$번째 칸에 코인이 있으면 $A_i = 1$ 아니라면 $0$이라고 간주합시다. 그렇다면, 위 전제하에선 $S_{i-1} + A_i \geq S_{i-1}$이 성립합니다. 위의 식은 $A_i \geq 0$이기 때문에 항상 성립합니다. 그렇다면 언제 $2$칸을 뛰어 넘어야 하느냐를 결정해야 합니다. 따라서, $S_{i-2} + A_i \geq S_{i-2} + A_{i-1} + A_i$일때 뛰어넘는것이 최적입니다. 식을 정리해보면, $A_{i-1} \leq 0$일때..
· Codeforces
A. int main() { fastio(); int T; cin >> T; while(T--) { int x; cin >> x; if(x> s; int r=0; int b=0; bool f=false; for(int i=0; i0) || (r>0 && b==0)) { cout 0) || (r > 0 && b == 0)) { cout T; while(T--) { int N; cin >> N; vector arr(N+2); vector ssum(N+2); vector rsum(N+2); for(int i=0; i> arr[i]; if(i==0) ssum[i]=arr[i]; else ssum[i] = arr[i] + ssum[i-1]; } for(int i=N-1; i>=0; i--) { if(i==N-1)..
Haru_101
'Codeforces' 카테고리의 글 목록