美文网首页
1042 Shuffling Machine (20 point

1042 Shuffling Machine (20 point

作者: zilla | 来源:发表于2019-01-19 13:57 被阅读0次

    1042 Shuffling Machine

    #include <stdio.h>
    
    #define N 55
    const char face_value[55][4] = {"",
                                    "S1", "S2", "S3", "S4", "S5", "S6", "S7", "S8", "S9", "S10", "S11", "S12", "S13",
                                    "H1", "H2", "H3", "H4", "H5", "H6", "H7", "H8", "H9", "H10", "H11", "H12", "H13",
                                    "C1", "C2", "C3", "C4", "C5", "C6", "C7", "C8", "C9", "C10", "C11", "C12", "C13",
                                    "D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "D10", "D11", "D12", "D13",
                                    "J1", "J2"};
    
    int main() {
        int seq[N], cards0[N], cards1[N], K;
    
        scanf("%d", &K);
        for (int i = 1; i < N; i++) {
            scanf("%d", &seq[i]);
            cards0[i] = i;
        }
        for (int k = 0; k < K; ++k) {
            if (k % 2 == 0)
                for (int i = 1; i < N; i++) {
                    cards1[seq[i]] = cards0[i];
                }
            else {
                for (int j = 1; j < N; ++j) {
                    cards0[seq[j]] = cards1[j];
                }
            }
        }
        if (K % 2 == 0) {
            for (int i = 1; i < 54; ++i) {
                printf("%s ", face_value[cards0[i]]);
            }
            printf("%s", face_value[cards0[54]]);
        } else {
            for (int i = 1; i < 54; ++i) {
                printf("%s ", face_value[cards1[i]]);
            }
            printf("%s", face_value[cards1[54]]);
        }
        return 0;
    }
    

    相关文章

      网友评论

          本文标题:1042 Shuffling Machine (20 point

          本文链接:https://www.haomeiwen.com/subject/nbtzdqtx.html