⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1263.cpp

📁 这是哈尔滨工业大学acmOJ的源代码
💻 CPP
字号:
/*  This Code is Submitted by wywcgs for Problem 1263 on 2005-03-19 at 19:02:25 */ 
#include <stdio.h>
#include <string.h>

int main()
{
    char keyword[11], plaintext[101], chTemp;
    int keyLen, textLen, order[10], temp;
    int i, j, k, flag;
    
    while(scanf("%s", keyword) == 1){
        if(!strcmp(keyword, "THEEND")){
            return 0;
        }else{
            keyLen = strlen(keyword);
            for(i = 0; i < keyLen; i++){
                order[i] = i;
            }
            for(i = 0; i < keyLen; i++){
                flag = 1;
                for(j = 0; j < keyLen-1; j++){
                    if(keyword[j] > keyword[j+1]){
                        temp = order[j+1];
                        order[j+1] = order[j];
                        order[j] = temp;
                        chTemp = keyword[j+1];
                        keyword[j+1] = keyword[j];
                        keyword[j] = chTemp;
                        flag = 0;
                    }else if(keyword[j] == keyword[j+1]){
                        if(order[j] > order[j+1]){
                            temp = order[j+1];
                            order[j+1] = order[j];
                            order[j] = temp;
                            chTemp = keyword[j+1];
                            keyword[j+1] = keyword[j];
                            keyword[j] = chTemp;
                            flag = 0;
                        }
                    }
                }
                if(flag == 1){
                    break;
                }
            }
            scanf("%s", plaintext);
            textLen = strlen(plaintext) / keyLen;
            for(j = 0; j < textLen; j++){
                for(i = 0; i < keyLen; i++){
                    for(k = 0; k < keyLen; k++){                   
                        if(order[k] == i){
                            printf("%c", plaintext[k*textLen+j]);
                            break;
                        }
                    }    
                }
            }
            printf("\n");
        }
    }
    
    return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -