삼성 SW expert academy17 모의 SW 역량테스트 (원자 소멸 시뮬레이션) * 알고리즘 시뮬레이션 * 로직 0.5초를 고려해주기 위해 배열을 2배 늘린다 (한 칸당 0.5초씩) 원자 에너지를 누적할 배열(count[][])을 생성한다 큐에는 각 원자들의 정보를 담는다 이동할 좌표가 배열 범위에 들어간다면 해당 위치에 에너지를 누적하고 이동할 좌표를 다시 큐에 넣는다 범위를 벗어난다면 큐에서 제거된다 기존 큐에 담겨있던 만큼(한 사이클) 동작이 이루어진 뒤, 저장된 에너지 값과 각각 원자의 에너지를 비교한다 만약 count에 누적된 값과 원자가 갖고있는 에너지가 다르다면 -> 다른 원자와 결합 -> 답을 누적한 뒤, 원자를 제거한다 만약 같다면 -> 큐에 다시 push한다 이를 반복한다 //원자 소멸 시뮬레이션 import java.io.BufferedReader; import .. 2020. 2. 17. 모의 SW 역량테스트 (홈 방범 서비스) * 알고리즘 브루트포스 BFS * 로직 (0,0)부터 한 칸씩 기준점을 이동한다 해당 기준점을 중심으로 1 2020. 2. 17. 모의 SW 역량테스트 (미생물 격리) * 알고리즘 시뮬레이션 * 로직 미생물들의 정보를 담는 클래스 객체 배열을 생성한다 존재하는 군집의 정보를 큐에 담는다 큐를 꺼내어 이동할 좌표를 구한다 이동할 구간에 아무런 군집정보가 존재하지 않는 상태에서 가장자리로 가는 경우 방향을 반대로 바꿔주고 (기존 미생물 수 / 2)로 갱신한다 범위 내로 이동하는 경우 그냥 이동시킨다 이동할 구간에 군집정보가 존재하는 상태라면 가장자리로 가는 경우 미생물 수 / 2를 누적해준다 범위 내로 이동한 경우 이미 존재하는 군집의 미생물 수가 더 많다면 -> 방향 유지, 값 누적 적다면 -> 방향 변경, 값 누적 map 전체를 돌면서 값이 존재하는 군집을 큐에 다시 담는다 이를 반복한다 //미생물 격리 import java.io.BufferedReader; impor.. 2020. 2. 17. 이전 1 2 3 4 5 6 다음