Work out what input you would need to solve this puzzle. unsigned long state = 1; unsigned int pb_rand() { state = state * 1103515245 + 12345; return (unsigned int)(state/65536) % 32768; } void pb_srand(unsigned long seed){ state = seed; } void scramble(char *str, int rounds){ int len = strlen(str); for(int i=0; i= len){ char *msg = "\"My, what big ints you have, Granny!\" " "\"All the better to overflow your buffers my dear\"\n"; failure(msg); } } long seed = (((long) (101320728)) << 32) + ~(101320728); pb_srand(seed); scramble(letters, 100); char buf[128] = {}; for(int i=0; i<5; i++){ buf[i] = letters[idxs[i]]; } union{ long l; char s[8]; } chong; chong.l = 478426194263; if(strcmp(buf,chong.s)==0){ return; } char *msg = "Where's that stripey hipster with the lame hat and cane?\n" "He's all spread around in there. Find him."; failure(msg); }
Work out what input you would need to solve this puzzle.
unsigned long state = 1;
unsigned int pb_rand() {
state = state * 1103515245 + 12345;
return (unsigned int)(state/65536) % 32768;
}
void pb_srand(unsigned long seed){
state = seed;
}
void scramble(char *str, int rounds){
int len = strlen(str);
for(int i=0; i<rounds; i++){
unsigned int idx = pb_rand() % len;
unsigned int jdx = pb_rand() % len;
char tmp = str[idx];
str[idx] = str[jdx];
str[jdx] = tmp;
}
}
char letters[128] =
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
void phase09(){
int idxs[5] = {};
int len = strlen(letters);
for(int i=0; i<5; i++){
idxs[i] = atoi(next_input());
if(idxs[i] >= len){
char *msg =
"\"My, what big ints you have, Granny!\" "
"\"All the better to overflow your buffers my dear\"\n";
failure(msg);
}
}
long seed = (((long) (101320728)) << 32) + ~(101320728);
pb_srand(seed);
scramble(letters, 100);
char buf[128] = {};
for(int i=0; i<5; i++){
buf[i] = letters[idxs[i]];
}
union{
long l;
char s[8];
} chong;
chong.l = 478426194263;
if(strcmp(buf,chong.s)==0){
return;
}
char *msg =
"Where's that stripey hipster with the lame hat and cane?\n"
"He's all spread around in there. Find him.";
failure(msg);
}
![](/static/compass_v2/shared-icons/check-mark.png)
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 4 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)