[伯俊/BOJ]2891カヌーと強風[Silver 5]
1598 ワード
code
#include <stdio.h>
int main()
{
//N = 팀의수 S = 카약이 손상된 팀의 수 R = 카약을 하나 더 가져온 팀의 수
int N, S, R, i, j, cnt = 0;
int broken_kayak[10] = { 0 }, more_kayak[10] = { 0 };
scanf("%d %d %d", &N, &S, &R);
for (i = 0; i < S; i++)
scanf("%d", &broken_kayak[i]);
for (i = 0; i < R; i++)
scanf("%d", &more_kayak[i]);
//조건
for (i = 0; i < S; i++)
for (j = 0; j < R; j++)
if (broken_kayak[i] == more_kayak[j])
{
broken_kayak[i] = -1;
more_kayak[j] = -1;
}
for (i = 0; i < S; i++)
{
for (j = 0; j < R; j++)
{
if (broken_kayak[i] == more_kayak[j] - 1 || broken_kayak[i] == more_kayak[j] + 1)
{
broken_kayak[i] = -1;
more_kayak[j] = -1;
}
}
if (broken_kayak[i] != -1)
cnt++;
}
printf("%d", cnt);
return 0;
}
何度も繰り返して、SとRを混同しないで、繰り返してやりましょう.コードも比較的簡単で、N、R、カヌーが損傷したチームは、複数のチームがこのように入力を受けています.
カヌーが損傷を受けたチームは、余分なチームが二重の複文で回転し、余分なチーム+1の範囲内に損傷を受けたチームがあれば、重ならず、-1を区別しやすい.0なら1番チームと-1の範囲内なので-1です
そして--1でなければ、cnt++でチームの数を計算します.
ここからもう一つカヤックを取ったチームのカヤックが損傷した場合、余分なカヤックで試合に参加し、このカヤックは他のチームに貸すことができません.李肇建に相応の条件を設定しなければならない.
重複文でダメージを受けたチーム==複数の人がいるチームであれば、2人を-1にして、他のチームとパートナーができないようにすればいいのです.私は最初は女の人がいる列に-1しか並んでいなかったので、ずっと間違っていました.
Reference
この問題について([伯俊/BOJ]2891カヌーと強風[Silver 5]), 我々は、より多くの情報をここで見つけました https://velog.io/@jychan99/2891.-카약과-강풍-Silver-5テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol