- int is_pangram(char *str)
- {
- int set = 0;
- for(; *str != '\0'; str++)
- {
- if (*str >= 'a')
- set |= setBit(*str - 'a' + 1);
- else
- set |= setBit(*str - 'A' + 1);
- if (set == 0x3FFFFFF)
- return 1; //return true
- }
- return 0;
- }
- int setBit(int toSet)
- {
- switch (toSet)
- {
- case 1: return 0x1;
- case 2: return 0x2;
- case 3: return 0x4;
- case 4: return 0x8;
- case 5: return 0x10;
- case 6: return 0x20;
- case 7: return 0x40;
- case 8: return 0x80;
- case 9: return 0x100;
- case 10: return 0x200;
- case 11: return 0x400;
- case 12: return 0x800;
- case 13: return 0x1000;
- case 14: return 0x2000;
- case 15: return 0x4000;
- case 16: return 0x8000;
- case 17: return 0x10000;
- case 18: return 0x20000;
- case 19: return 0x40000;
- case 20: return 0x80000;
- case 21: return 0x100000;
- case 22: return 0x200000;
- case 23: return 0x400000;
- case 24: return 0x800000;
- case 25: return 0x1000000;
- case 26: return 0x2000000;
- }
- }
???
ㅋㅋ switch 론 분기 땜에 못이겨
생각해보니깐 뤂 돌때마다 비교 검사 해서 스트링 짧을때는 저거 없는게 더 빠르겟다
ㄹㅇ 처음에는 math.h에 pow()써서 하려고 했는데 이러면 시간 걸리고 저렇게 해놨는데
const unsigned int alphaset[128]보고 부랄 탁! 쳤음
다음에 써먹는다고 생각하니깐 싱글벙글
쉬프트 연산도 개굿