美인기 드라마 '워킹데드 시즌5' 오늘 밤 '첫방'
2014-10-15 21:27:10

아! 오랜 기다림에 드디어 나왔군요

▼ more
시간이 지나고 보면
2014-10-10 07:01:03

무엇이 정말 필요한 일인지

알게 될 것이다.

▼ more
Crypt KickerII(PC/UVa ID: 110304/850)
2014-10-09 00:28:47

//음.. 이책의 정체는 뭘까?

#include <stdio.h>

#include <string.h>

char str[100][81];

char diff[26];

const char* known_str = "the quick brown fox jumps over the lazy dog";

int targetSentence = -1;

int main(){

    int i,j;

    int n=3;

    //모든 문장을 돌면서 각 단어가 위 숫자와 같은 길이로 split(by space) 되면..

    //그 문장을 기반으로 diff 배열을 만든다.

    //diff 배열에 따라.. 값을 돌려준다. 값을 넣을때는 이와같이 넣고..

    strcpy(str[0],"vtz ud xnm xugm itr pyy jttk gmv xt otgm xt xnm puk ti xnm fprxq");

    strcpy(str[1],"xnm ceuob lrtzv ita hegfd tsmr xnm ypwq ktj");

    strcpy(str[2],"frtjrpgguvj otvxmdxd prm iev prmvx xnmq");

    //길이로 쳐내고 같은 길이인경우 띄어쓰기 확인..

    for(i=0;i<n;i++){

        char ok = 1;

        for(j=0;known_str[j]!='\0';j++){

            if((str[i][j] == ' '&&known_str[j]!=' ') ||(str[i][j] != ' '&&known_str[j]==' ')){

                ok = 0;

                break;

            }

        }

        if(ok && str[i][j]=='\0' && known_str[j]=='\0') {

            targetSentence = i;

            break;

        }

    }

    if(targetSentence == -1){

        printf("No solution.

");

    }else{

    //찾고 나면

    for(i=0;known_str[i]!='\0';i++){

        if(str[targetSentence][i]!=' '){

            diff[str[targetSentence][i]-'a'] = known_str[i];

        }

    }

    //복호화..

    for(j=0;j<n;j++){

        for(i=0;str[j][i]!='\0';i++){

            if(str[j][i]==' '){

                printf(" ");

            }else{

                printf("%c",diff[str[j][i]-'a']);

            }

        }

        printf("

");

    }

    }

}

▼ more
찜찜하지만..
2014-10-08 19:54:10

일단 지금 정신상태로 뭘 해봐야 될것 같지도 않으니 내일은 방탕하게

▼ more