ascode 1005 시분할 연습 #2

최대 1 분 소요

문제 설명

시분할 연습 #1 에서는 제한된 주기의 갯수를 통하여 출력을 하는 연습을 하였다.
그리고 만약 구조체를 이용하여 문제를 해결을 하였다면은 시분할 연습 #2 또한 쉽게 해결 가능하다.

입력 설명

첫번째 줄에는 테스트 케이스가 들어온다. 0 < TestCase < 10 (정수이다.)
두번째 줄에서는 진행할 시간과 주기의 갯수가 들어온다. 0 < T(시간) < 10000, 0 < C(주기) <= 10
세번째 줄 부터는 모든 주기의 값들은 10000을 넘지 않는다.
네번째 줄 부터는 두번째의 입력의 반복이다.

출력 설명

주기가 똑같은 경우에는
아스키 코드가 작은 A가 가장 먼저 출력이 되고
Z가 가장 늦게 출력이 된다.

주기가 1일 경우 매번 출력이 된다.

입력 예시

2
10 3
1 3 2
15 4
4 1 2 3

출력 예시

AACABACAABCAACABAC
BBCBDABCBBCDBABCBDBCBABCDBBCBD

코드

#include <stdio.h>

int main() {
	int a, b, c, e = 65, arr[1000],j;
	scanf("%d", &a);
	for (int i = 0; i < a; i++)
	{
		scanf("%d %d", &b, &c);
		for (int i = 0; i < c; i++)
		{
			scanf("%d", &arr[i]);
		}
		for (j = 1; j <= b; j++)
		{
			for (int i = 0; i < c; i++)
			{
				if (j % arr[i] == 0) {
					printf("%c", e + i);	
				}
			}
		}
		printf("\n");
	}
}

댓글남기기