'알고리즘 모음집' 카테고리의 글 목록 (13 Page)
본문 바로가기
728x90
반응형

알고리즘 모음집307

22-04-05-14499주사위굴리기 01.문제설계 02.문제풀이중 실수 1,2,3,4 방향에 따른 주사위 의 순서 변경 누락함 주사위를 먼저 이동 시킴 순서를 틀림 이동칸이 0인 경우 주사위의 값을 복사하는 부분을 주사위의 값만 0으로 변경함 03.최종소스 #include #include using namespace std; #define NS 21 #define MS 21 int board[NS][MS]; int ret; int N, M, y, x, K; int cube[7] = { 0, };//주사위 기록 초기 0 int dy[] = { 0,0,-1,1 }; int dx[] = { 1,-1,0,0 }; void init() { scanf("%d %d %d %d %d", &N, &M, &y, &x, &K); for (int i = 0; .. 2022. 4. 5.
22-04-04-3190-뱀 01.필요알고리즘 01.1 뱀의 머리와 꼬리 구분 tail = ret - size; 01.2 뱀이 방향을 이동하는 시기 if (ret == X) { if (C == 'D') { dir++; if (dir == 4)dir = 0; } else { dir--; if (dir == -1)dir = 3; } if (l != L - 1)break; } 01.3 뱀이 종료되는 시점 if (!(1 2022. 4. 4.
22.04.02_12100_2048Easy 01.필수 알고리즘 01.1 배열 회전 방향 시계방향인 경우1 void rotation(int arr[N_SIZE][N_SIZE]) { int crr[N_SIZE][N_SIZE] = { 0, }; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { crr[j][N - i -1] = arr[i][j]; } } for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { arr[i][j] = crr[i][j]; } } } 방향 시계방향인 경우2 void rotation(int arr[N_SIZE][N_SIZE]) { int copy[N_SIZE][N_SIZE] = { 0, }; for (int i = 0; .. 2022. 4. 3.
22.02.08_퀵소트 찰스 앤터니 리처드 호어가 개발 불안정 정렬에 속함 다른 원소와의 비교만으로 정렬을 수행하는 비교정렬에 속함 분할 정복 알고리즘의 하나로 , 평균적으로 매우 빠른 수행 속도를 자랑하는 정렬 머지소트와 달리 퀵정렬은 리스트를 비균등하게 분할 0. 방식 리스트 안에 있는 한 요소 선택 이것을 피벗이라고 함 피벗 기준으로 피벗보다 작은 요소들은 모두 피벗의 왼쪽으로 피벗보다 큰 요소들은 모두 피벗의 오른쪽으로 이동 피벗을 제외한 왼쪽 리스트와 오른쪽 리스트 다시 정렬 분할된 부분 리스트에 대하여 순환 호출을 이용하여 정렬을 반복 부분 리스트에서도 다시 피벗을 정하고 피벗을 기준으로 2개의 부분 리스트로 나누는 과정 반복 부분 리스트들이 더 이상 분할이 불가능 할 때까지 반복 리스트의 크기가 0이나 1이 될때 .. 2022. 2. 9.
728x90
반응형