재용이는 최신 컴퓨터 10대를 가지고 있다. 어느 날 재용이는 많은 데이터를 처리해야 될 일이 생겨서 각 컴퓨터에 1번부터 10번까지의 번호를 부여하고, 10대의 컴퓨터가 다음과 같은 방법으로 데이터들을 처리하기로 하였다.
1번 데이터는 1번 컴퓨터, 2번 데이터는 2번 컴퓨터, 3번 데이터는 3번 컴퓨터, ... ,
10번 데이터는 10번 컴퓨터, 11번 데이터는 1번 컴퓨터, 12번 데이터는 2번 컴퓨터, ...
총 데이터의 개수는 항상 ab개의 형태로 주어진다. 재용이는 문득 마지막 데이터가 처리될 컴퓨터의 번호가 궁금해졌다. 이를 수행해주는 프로그램을 작성하라.
위의 문제를 풀어보았다. 코드는 아래와 같다.
#include<stdio.h>
#include<stdlib.h>
main(){
int i,j,t;
int *a,*b,*tmp;
scanf("%d",&t);
a=(int*)malloc(sizeof(int)*t);
b=(int*)malloc(sizeof(int)*t);
tmp=(int*)malloc(sizeof(int)*t);
for(i=0;i<t;i++){
scanf("%d %d",&a[i],&b[i]);
tmp[i]=1;
for(j=0;j<b[i];j++){
tmp[i]*=a[i];
if(tmp[i]>10)
tmp[i]%=10;
}
if(tmp[i]==0){
tmp[i] = 10;
}
}
for(i=0;i<t;i++)
printf("%d\n",tmp[i]);
free(tmp);
free(b);
free(a);
}
'Programing > C' 카테고리의 다른 글
C :: 백준 11718번 - 그대로 출력하기 (0) | 2017.06.21 |
---|---|
C :: 백준 1475번 - 방 번호 (0) | 2017.06.12 |
C :: 파일 입력 및 정렬된 숫자 출력 (0) | 2017.05.09 |
C :: 기억 클래스 (0) | 2017.05.09 |
C :: 포맷스트링 연습 (0) | 2017.04.25 |