Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
Tags
- chatgpt #gpt #챗지피티 #ai
- 도커 #Docker #배포 #Spring #MySQL #백엔드배포
- /
- 도커 #docker #docker-compose.yml #도커컴포즈 #배포 #spring #mysql #docker-compose
Archives
- Today
- Total
개발자 데뷔!
[C/C++ 8.4] 알고리즘 - Shift Left / Shift Right 본문
Shift Left / Shift Right
// Level 23.5
//1번
int arr[5] = { 3,5,1,9,7 }; // Shift Left, Shift Right 정리 해놓음 !!
void belt(char A) {
int tmp;
// Shift Right
if (A == 'R') {
//swap
tmp = arr[4]; // 마지막 문자 미리 저장
for (int i = 3; i >=0; i--) {
arr[i + 1] = arr[i];
}
arr[0] = tmp;
}
// Shift Left
else if (A == 'L') {
//swap
tmp = arr[0]; // 첫번째 문자 미리 저장
for (int i = 0; i < 4; i++) {
arr[i] = arr[i+1];
}
arr[4] = tmp;
}
}
int main() {
char RL[4];
for (int i = 0; i < 4; i++)
cin >> RL[i];
for (int i = 0; i < 4; i++)
belt(RL[i]);
for (int i = 0; i < 5; i++)
cout << arr[i] << " ";
return 0;
}
입력받은 수 Shift Right한 값으로 2차배열 치환
예로들어13 7 6을 입력 받았다고 한다면,
이차배열의 값을 1->3,3->7, 7->6, 6->1 로 변경
//4번
int main() {
int arr[3][4] = {
3,5,4,1,
1,1,2,3,
6,7,1,2
};
int input[4];
//입력
for (int i = 0; i < 4; i++)
cin >> input[i];
//바꾸기 // 입력한 숫자 차례대로 shift right 하며, 2차배열 속 숫자 바꾸기 !!!
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
for (int t = 0; t < 3; t++) {
if (arr[i][j] == input[3]) { // 단, 마지막 일 땐 처음으로 순환
arr[i][j] = input[0];
break;
}
if (arr[i][j] == input[t]) { //컨베이어 벨트
arr[i][j] = input[t + 1];
break; // break 안하면 한번 바뀐 값이 계속해서 바뀔 수 있음 !!!******* 주의 !!!!
// for문으로 서로 다른 각 2 개 이상 비교할 때 주의 !!! ***
}
}
}
}
// 출력
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
cout << arr[i][j] << " ";
}
cout << endl;
}
return 0;
}'알고리즘 & 자료구조 > 알고리즘 (Algo)' 카테고리의 다른 글
| [C/C++ 2.4] 알고리즘 STL (0) | 2022.05.05 |
|---|---|
| [C/C++ 8.6] 알고리즘 - 그래프(인접행렬) / DFS/ BFS (0) | 2022.04.23 |
| [C/C++ 8.3] 알고리즘 - 재귀/DFS/BFS (0) | 2022.04.19 |
| [C/C++ 8.3] 알고리즘 - 재귀 (0) | 2022.03.17 |
| [C/C++ 8.2] 알고리즘 - Direct (0) | 2022.03.16 |