[C언어] 백준 3036 : 링
생각의 흐름
쉬워보였다. 배열에다 저장해주고, 첫번째 값 (8)잡고 4와 2로 나누어 떨어지는경우와 아닌경우로 나누어서 풀었다.
나누어 떨어지면 그냥 나눈값 저장하고 /1 출력,
아니라면 최대공약수 구해서 출력. 끝
내가 푼 코드
#include <stdio.h>
int main()
{
int n, i, min, j;
int arr[101];
int temp[101];
scanf("%d", &n);
min = 1;
i = 1;
while (i <= n)
{
scanf("%d", &arr[i]);
i++;
}
i = 2;
while (i <= n)
{
if (arr[1] % arr[i] == 0)
{
temp[i] = arr[1] / arr[i];
printf("%d/1\n", temp[i]);
}
else
{
j = 1;
while (j <= arr[i])
{
if (arr[1] % j == 0 && arr[i] % j == 0)
min = j;
j++;
}
printf("%d/%d\n", arr[1] / min, arr[i] / min);
}
i++;
}
}
지금 보니 굳이 temp[i] 안잡고 걍 int temp로 하고 초기화하고 그런식으로 했어도 충분했을 것 같다.
Author And Source
이 문제에 관하여([C언어] 백준 3036 : 링), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@kimmainsain/C언어-백준-3036-링저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)