본문 바로가기
Computer Science

A기실 암호생성기 / 큐

by OKOK 2018. 12. 13.

1. 문제 예제를 보고 어떻게 풀이하면 빠를지 고민

2. 여러번 정독하고 빠르게 읽음

3. 어떻게 풀이하면 엔오 줄일지 고민

4. 메모리는 충분함 


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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include <stdio.h>
 
#define MaxData 8
int NumBuff[MaxData];
 
#define MaxQueue 100000
int Queue[MaxQueue];
int front = -1, rear = -1;
 
void printfQ() {
    printf("Q : ");
    for (int i = front + 1; i <= rear; i++) {
        printf("%d ", Queue[i]);
    }
    printf("\n");
}
 
void cycles() {
    int i = 0, temp;
    int final_data = 1;
 
 
    while (final_data) {
 
        front = (front + 1) % MaxQueue;
        temp = Queue[front- (i % 5 + 1);
 
        if (temp <= 0) {
            temp = 0;
            final_data = 0;
        }
        rear = (rear + 1) % MaxQueue;
        Queue[rear] = temp;
        i++;
    }
}
 
int main(void)
{
    freopen("input.txt""r", stdin);
    int test_case, testNum, min, min_temp;
    int T = 10, i, j;
    
    setbuf(stdout, NULL);
 
    for (test_case = 1; test_case <= T; ++test_case)
    {
        front = -1, rear = -1;
        min = 1000000;
 
        scanf("%d "&testNum);
        for (i = 0; i < MaxData; i++) {
            scanf("%d "&NumBuff[i]);
            min_temp = NumBuff[i] / 15;
            if (min > min_temp) min = min_temp;
        }
        min--;
 
        for (i = 0; i < MaxData; i++) {
            Queue[++rear] = NumBuff[i] - min * 15;
        }
 
        //      printf("\n");
        //      printfQ();
 
        cycles();
        //      printfQ();
 
        printf("#%d ", test_case);
 
        for (i = front + 1; i <= rear; i++) {
            printf("%d ", Queue[i]);
        }
        printf("\n");
    }
    return 0//정상종료시 반드시 0을 리턴해야 합니다.
}
 
cs


'Computer Science' 카테고리의 다른 글

A기실 암호문1/ 리스트를 배열로  (0) 2018.12.14
A기실 미로1 / 큐문제에 재귀로  (0) 2018.12.13
A기실 계산기1 / 스택  (0) 2018.12.13
A 실 기 길찾기 / DFS  (0) 2018.12.13
A 기 실 괄호짝짓기 / 스택  (0) 2018.12.13

댓글