일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- SWEA
- 파주맛집
- 삼성 코테
- 유압
- 앱인벤터 강의
- 삼성전자
- 공유압기능사
- 센서
- 지능형스마트팩토리구축실무(+AI)
- AI컴패니언
- 코테
- 앱인벤터
- 삼성코테
- 근접센서
- 경기인력개발원
- 앱인벤터 강좌
- C++
- 백준
- 스마트팩토리
- 공압
- 동패동맛집
- 공유압
- MIT앱인벤터
- 두봇
- SW역량 평가
- 삼성sw
- 아두이노
- 코딩테스트
- Dobot
- 삼성SDS
- Today
- Total
IT를 품은 기계공학도
[ 난이도 ] ★★☆ [ 문제 링크 ] https://www.acmicpc.net/problem/17143 [ 문제 풀이 ] 문제는 위의 링크를 보고 온다. 이 문제는 간단한 시뮬레이션 문제로 다음과 같은 과정을 거친다 첫째, 사람이 이동을 한다. 둘째, 물고기를 잡는다. 셋째, 물고기가 이동한다. 넷째, 겹쳐있는 물고기끼리의 포식이 일어난다. 이 조건만 코드로 간단히 구현하면 되는데, 상어가 속도가 최대 1000이다 따라서 for문으로 한 마리씩 1000번을 최대 100 마리씩 돌게 되면 무지하게 많은 연산양이 따르게 된다. 따라서 간단한 요령으로 이문제를 해결해보자. 다음과 같은 그림에서 A물고기는 10번을 이동하면 원위치가 된다. B물고기는 6번을 움직이면 제자리로 돌아온다. 뭔가 규칙이 느껴진다...
[ 관련 지식 ] https://twpower.github.io/93-how-to-use-priority_queue-in-cpp [ 난이도 ] ★★★ [ 문제 링크 ] https://www.acmicpc.net/problem/16235 [ 문제 풀이 ] 문제 자체는 큰 어려움이 없다. 각각 봄, 여름, 가을, 겨울에 맞는 함수를 짜주고 반복시키면 된다. 다만 한가지 문제는 정확히 풀었는데 시간이 많이 부족한 문제였다. 아래 예제는 시간이 초과하는 예제지만.. 덱을 사용하여 구현하면 시간이 빨라진다고 한다. 만든 사용자 함수는 크게 1. Load_Input() : 입력을 받아오고 모든 땅의 초기 비료를 5로 초기화하는 부분이다. 2. Spring() : 봄에 해당하는 함수이다. 우선순위 큐를 사용하여 나이..
[ 난이도 ] ★☆☆ [ 문제 링크 ] https://www.acmicpc.net/problem/17144 [ 문제 풀이 ] 해당 문제를 풀기 위해 1. 매초마다 가능한 방향만큼 cnt를 해주어 값을 빼주었다. 2. 그리고 더해저야할 값은 Wide_Map에 저장하여 한번에 더해주었다. 이렇게 한 이유는 각칸마다 매번 값을 확산시키면 다음칸의 값이 변하게되어 결과에 영향을 미치게 되기 때문이다. 3. 그리고 확산이 완료되면 방향을 이동시킨다. [ 소스 코드 ] Coded by 공돌학사, 2019-12-06 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 32 33 34 35 36 37 38 39 40 41..
[ 관련 지식 ] 1. 조합 https://yabmoons.tistory.com/99 [ 난이도 ] ★☆☆ [ 문제 링크 ] https://www.acmicpc.net/problem/15686 [ 문제 풀이 ] 해당 문제는 Brute Force로 원하는 치킨집의 조합을 모두 탐색하는 것이다. 위 관련 지식에 있는 조합 구현식만 알고 있다면 크게 어려운 부분은 없는 것 같다. 본인은 조합을 구현하는 방법을 몰라서 많이 헤매다가 결국 문제를 해결하였다. Coded by 공돌학사, 2019-12-02 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 32 33 34 35 36 37 38 39 40 41 42 4..
[ 난이도 ] ★★☆ [ 문제 링크 ] https://www.acmicpc.net/problem/16234 [ 문제 풀이 ] 본인은 BFS로 문제를 해결하였다. 문제의 조건은 다음과 같다. 국경선을 공유하는 두 나라의 인구 차이가 L명 이상, R명 이하라면, 두 나라가 공유하는 국경선을 오늘 하루동안 연다. 위의 조건에 의해 열어야하는 국경선이 모두 열렸다면, 인구 이동을 시작한다. 국경선이 열려있어 인접한 칸만을 이용해 이동할 수 있으면, 그 나라를 오늘 하루 동안은 연합이라고 한다. 연합을 이루고 있는 각 칸의 인구수는 (연합의 인구수) / (연합을 이루고 있는 칸의 개수)가 된다. 편의상 소수점은 버린다. 연합을 해체하고, 모든 국경선을 닫는다. 첫째 줄에 N, L, R이 주어진다. (1 ≤ N ≤..
[ 난이도 ] ★★☆ [ 문제 링크 ] https://www.acmicpc.net/problem/15685 [ 문제 풀이 ] 복잡하면서도 간단한 시뮬레이션 문제이다. 우선 드래곤 커브의 세대가 늘어남에 따라 어떤 식으로 규칙이 생기는지 파악을 하여야 한다. 그림과 같은경우 방향을 따져보면 0세대 : 0 1세대 : 0 1 2세대 : 0 1 2 1 3세대 : 0 1 2 1 2 3 2 1 과 같이 표시가 된다. 전 세대의 마지막 원소부터 대칭을 하고 1을 더한 후 4로 나눈 몫이 다음 세대 방향과 같다. 따라서 이 문제를 풀기위해 1. 해당 드래곤의 방향과 세대를 통해 이동할 방향을 모두 구해놓고 2. 드래곤이 방문한 지점을 체크해준뒤 3. 마지막으로 (0,0)부터 맵 끝까지 4각형으로 방문된 기록이 있으면 ..
[ 난이도 ] ★★☆ [ 문제 링크 ] https://www.acmicpc.net/problem/15683 [ 문제 풀이 ] 해당 문제를 풀기위해 1. Vector를 사용하여 CCTV의 종류와 좌표를 저장하였다. 2. DFS를 재귀로 구현하여 모든 해당 CCTV의 모든 경우를 완벽탐색 하였다. 3. 해당 경우의 감시를 할경우 맵상에 9로 표시하였으며 6은 벽 1~5는 CCTV 인것을 고려하여 0인 것을 카운트 해준다. [ 소스 코드 ] Coded by 공돌학사, 2019-11-30 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 ..
[ 난이도 ] ★★☆ [ 문제 링크 ] https://www.acmicpc.net/problem/14890 [ 문제 풀이 ] 문제는 다음과 같다. N X N 크기의 맵에 각각의 칸에는 높이가 표시되어있다. N X N개 맵에 길은 다음 그림 1과 같이 2N개이다. 높이가 다른 길을 지나기 위해 우리는 L길이에 높이 1인 경사로를 설치하여야 한다. 경사로는 다음과 같이 놓을 수 없다. 위의 예시를 정답이 되는 케이스로 보면 더 이해하기 쉬울 것이다. 이 문제는 특별한 알고리즘을 사용하기 보다는 단순히 경우에 따른 If와 For문을 적절히 사용하고 각 길에 경사로가 놓인 자리를 방문 처리하여 해결하였다. [ 소스 코드 ] Coded by 공돌학사, 2019.11.24 1 2 3 4 5 6 7 8 9 10 11..