রবিবার, ২৮ আগস্ট, ২০১৬

UVA 195 - Anagram

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
main()
{
   long int i,n;
   scanf("%ld",&n);
   getchar();
   for(i=1;i<=n;i++)
   {
        char s[100000]={0};
        gets(s);
        long l=strlen(s),j,k,k1=0,ar[100000]={0};
        for(k=0;k<l;k++)
        {
        if(s[k]=='A') ar[k1++]=1;
        else if(s[k]=='a') ar[k1++]=2;
else if(s[k]=='B') ar[k1++]=3;
else if(s[k]=='b') ar[k1++]=4;
else if(s[k]=='C') ar[k1++]=5;
else if(s[k]=='c') ar[k1++]=6;
else if(s[k]=='D') ar[k1++]=7;
else if(s[k]=='d') ar[k1++]=8;
else if(s[k]=='E') ar[k1++]=9;
else if(s[k]=='e') ar[k1++]=10;
else if(s[k]=='F') ar[k1++]=11;
else if(s[k]=='f') ar[k1++]=12;
else if(s[k]=='G') ar[k1++]=13;
else if(s[k]=='g') ar[k1++]=14;
else if(s[k]=='H') ar[k1++]=15;
else if(s[k]=='h') ar[k1++]=16;
else if(s[k]=='I') ar[k1++]=17;
else if(s[k]=='i') ar[k1++]=18;
else if(s[k]=='J') ar[k1++]=19;
else if(s[k]=='j') ar[k1++]=20;
else if(s[k]=='K') ar[k1++]=21;
else if(s[k]=='k') ar[k1++]=22;
else if(s[k]=='L') ar[k1++]=23;
else if(s[k]=='l') ar[k1++]=24;
else if(s[k]=='M') ar[k1++]=25;
else if(s[k]=='m') ar[k1++]=26;
else if(s[k]=='N') ar[k1++]=27;
else if(s[k]=='n') ar[k1++]=28;
else if(s[k]=='O') ar[k1++]=29;
else if(s[k]=='o') ar[k1++]=30;
else if(s[k]=='P') ar[k1++]=31;
else if(s[k]=='p') ar[k1++]=32;
else if(s[k]=='Q') ar[k1++]=33;
else if(s[k]=='q') ar[k1++]=34;
else if(s[k]=='R') ar[k1++]=35;
else if(s[k]=='r') ar[k1++]=36;
else if(s[k]=='S') ar[k1++]=37;
else if(s[k]=='s') ar[k1++]=38;
else if(s[k]=='T') ar[k1++]=39;
else if(s[k]=='t') ar[k1++]=40;
else if(s[k]=='U') ar[k1++]=41;
else if(s[k]=='u') ar[k1++]=42;
else if(s[k]=='V') ar[k1++]=43;
else if(s[k]=='v') ar[k1++]=44;
else if(s[k]=='W') ar[k1++]=45;
else if(s[k]=='w') ar[k1++]=46;
else if(s[k]=='X') ar[k1++]=47;
else if(s[k]=='x') ar[k1++]=48;
else if(s[k]=='Y') ar[k1++]=49;
else if(s[k]=='y') ar[k1++]=50;
else if(s[k]=='Z') ar[k1++]=51;
else if(s[k]=='z') ar[k1++]=52;
}
        sort(ar,ar+l);
        do
        {
        for(k=0;k<k1;k++)
{
if(ar[k]==1) printf("A");
else if(ar[k]==2) printf("a");
else if(ar[k]==3) printf("B");
else if(ar[k]==4) printf("b");
else if(ar[k]==5) printf("C");
else if(ar[k]==6) printf("c");
else if(ar[k]==7) printf("D");
else if(ar[k]==8) printf("d");
else if(ar[k]==9) printf("E");
else if(ar[k]==10) printf("e");
else if(ar[k]==11) printf("F");
else if(ar[k]==12) printf("f");
else if(ar[k]==13) printf("G");
else if(ar[k]==14) printf("g");
else if(ar[k]==15) printf("H");
else if(ar[k]==16) printf("h");
else if(ar[k]==17) printf("I");
else if(ar[k]==18) printf("i");
else if(ar[k]==19) printf("J");
else if(ar[k]==20) printf("j");
else if(ar[k]==21) printf("K");
else if(ar[k]==22) printf("k");
else if(ar[k]==23) printf("L");
else if(ar[k]==24) printf("l");
else if(ar[k]==25) printf("M");
else if(ar[k]==26) printf("m");
else if(ar[k]==27) printf("N");
else if(ar[k]==28) printf("n");
else if(ar[k]==29) printf("O");
else if(ar[k]==30) printf("o");
else if(ar[k]==31) printf("P");
else if(ar[k]==32) printf("p");
else if(ar[k]==33) printf("Q");
else if(ar[k]==34) printf("q");
else if(ar[k]==35) printf("R");
else if(ar[k]==36) printf("r");
else if(ar[k]==37) printf("S");
else if(ar[k]==38) printf("s");
else if(ar[k]==39) printf("T");
else if(ar[k]==40) printf("t");
else if(ar[k]==41) printf("U");
else if(ar[k]==42) printf("u");
else if(ar[k]==43) printf("V");
else if(ar[k]==44) printf("v");
else if(ar[k]==45) printf("W");
else if(ar[k]==46) printf("w");
else if(ar[k]==47) printf("X");
else if(ar[k]==48) printf("x");
else if(ar[k]==49) printf("Y");
else if(ar[k]==50) printf("y");
else if(ar[k]==51) printf("Z");
else if(ar[k]==52) printf("z");
}
printf("\n");
}
while(next_permutation(ar,ar+k1));
//printf("\n");
   }
}

কোন মন্তব্য নেই:

একটি মন্তব্য পোস্ট করুন

Factorization with prime Sieve

vector <int> prime; char sieve[1000009]; int N=1000009; void primeSieve ( ) { sieve[0] = sieve[1] = 1; prime.push_back(2); ...