구현

문제 풀이 구현, 시뮬레이션 문제이다. 파이어볼을 표현할 구조체를 하나 만든다. (fireball) 문제의 방을 vector room[51][51]의 형태로 만들어서 (x, y)의 방의 파이어볼의 데이터를 알 수 있도록 하였다. 각각의 방을 조사하며 파이어볼을 이동시킨다. 이동 시, 속도가 방의 크기보다 클 수 있기 때문에 mod연산을 사용하며 범위를 초과했다면 범위에 맞게 조절해준다. 이동 후의 방에 파이어볼이 합쳐졌다면, (x, y)에서의 vector를 이용해서 합친다. 코드 #include #include using namespace std; typedef struct { int mass; int speed; int direction; }fireball; // 이동 방향 8가지 int dx[8] =..
문제 풀이 미세먼지는 동시에 확산 하므로 확산했을 때의 변화값을 의미하는 배열을 하나 더 선언한다. 확산 시, 소스가 되는 미세먼지는 상하좌우로 확산된 수에 비례한다. 공기 청정기에 의한 순환은 for문으로 아래와 위 공기 청정기 각각의 방향에 따라 설정하였다. 코드 #include using namespace std; int room[51][51]; int room_dif[51][51]; int move_x[4] = { 0, 0, 1, -1 }; int move_y[4] = { 1, -1, 0, 0 }; int airConUp = -1; int airConDown = -1; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int R, C, T; int ..
KANTAM
'구현' 태그의 글 목록 (3 Page)