728x90
반응형
https://www.acmicpc.net/problem/2920
2920번: 음계
다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8
www.acmicpc.net
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
|
#include <stdio.h>
int main() {
int arr[8];
for (int i = 0; i < 8; i++) {
scanf("%d", &arr[i]);
}
int* ptr = arr;
int ascend = 0;
int descend = 0;
for (int i = 0; i < 8; i++) {
if (*(ptr+i)==i+1) {
ascend++;
}
else if (*(ptr+i)==8-i) {
descend++;
}
}
if (ascend == 8) {
printf("ascending");
}
else if (descend == 8) {
printf("descending");
}
else {
printf("mixed");
}
}
|
cs |
포인터 관련 문제쳤더니 이게 나와서 풀어봤는데 굳이 포인터가 필요할 것 같진 않았다.. 그래도 난 포인터로 풀었다 ㅋㅋ
이 문제를 풀때 틀렸던게
이렇게 써서 틀렸다. 어차피 숫자의 범위가 1부터 8이고
1부터 8까지 오름차순으로 정렬되어야 ascend이면 *(ptr+i)==i이면 ascend++을 해주면 되었다.
너무 단순한 생각인데 왜 못했을까 싶다.
포인터만 나오면 뭔가 더 어려운 것같아서 그런것일까...
뭐.. 더 열심히 풉시다.
728x90
반응형
'C > 중간고사 대비 (2022 1학기)' 카테고리의 다른 글
[C백준] 실버 5/ 1018번 체스판 다시 칠하기 (0) | 2022.03.20 |
---|---|
[C언어 백준] 실버 4/ 1213번 팰린드롬 만들기 (0) | 2022.03.17 |
단축키 (0) | 2022.03.10 |
[C 백준] 브론즈 /2748번 피보나치수 2 (0) | 2022.03.10 |
[C 백준] 브론즈 3/ 2445번 별찍기 -8 (나비모양 별찍기) (0) | 2022.03.05 |
댓글