### Konjac's blog

By Konjac, 10 years ago,

Really a funny contest. Hope for more.

Here are some hints.

RSA

#### Problem B

Case #1

c..r..h
.h..z..
..a..e.


#### Problem C

msg[i] = (26 + cipher[i]-cipher[i-1] ) mod 26 + 'a'

#### Problem D

The first character is Z/O we guess it means zero or one.

Z,1,2,3,2,1,2,1,1,4,2,4,1,1,3,2,1,2,4,1,1,2,2,2,1,1,1,1,2,1,1,3 Means start with zero, we have 1 zero then 2 ones, 3 zeros, 2 ones, 1 zero …

The last step is the same to Problem I.

Morse code.

#### Problem F

2715 seems like base 27 and base 15.

26 letters in base 27 and 15 letters in base 15. Maybe the 26 letters are 1-26 instead of 0-25.

#### Problem G

brute force + search + good luck. Some online anagram websites will be helpful.

ps: The answer may not be unique?

For example, "yvuoedloreoic" could both be "I love your code" or "I love you coder". But the system test only accept "I love you coder".

#### Problem H

26 integers in first line. Maybe it means the repeat times of each letter in the input?

The following lines is easy to understand, the positions of each letter.

#### Problem I

The cipher is the binary representation of the ASCII characters.

#### Problem J

All letters occur in the samples. Just use the samples to build a map.

#### Problem K

For most samples, cipher[i] ≈ cipher[i-1]*31.

After checking cipher[i]-cipher[i-1]*31, you will find such a formula

cipher[i] = (cipher[i-1]*31 + message[i]) % mod

#### Problem L

Why should the input longer than 7? Oh, key! The input is encrypted by simple XOR with a fixed key.

out[i] = Input[i] xor key[i mod 7]

#### Problem M

The title "oplus" gives a hint to try XOR operation.

cipher[i] xor msg[i] = 222

#### Problem N

It's guaranteed that the original string is made of lower case English letters.

The samples gives almost half the mappings of a-z.

(eight numbers in a row. dots means unknown ones)

0 .  8  . 16 17  . 25
4 .  .  . 20  . 28  .
. 3 10 11 18  .  .  .
6 7


It is obvious that table[i][j]-table[k][j] is always the same for a chosen (i, k). So we can fill the remain positions by hand.

0 1  8  9 16 17 24 25
4 5 12 13 20 21 28 29
2 3 10 11 18 19 26 27
6 7


#### Problem O

The equal marks gives a hint that it's coded in Base64.

#### Problem P

The title prooooooooooooofer is a very useful hint.

It means Prüfer sequence.

For an undirect tree with n nodes, Prüfer sequence uses n-2 numbers to encode it.

Then recover the given Prüfer sequence to an undirect tree.

Use BFS and DFS sequence of the tree to permute the cipher text.

msg[i] = cipher[DFS[BFS[i]]]

#### Problem Q

Each letter is rotated left by one postion.

#### Problem R

Similar to problem Q.

• +29

By Konjac, 10 years ago,

Hi!

I'm supporting a proposal to create a new Q&A website for programmers solving problems (and competing) on sites like Codechef, Topcoder, Codeforces, SPOJ etc. and contests like ACM ICPC, Google Codejam etc.

It's built on the same software as stackoverflow.com, a hugely popular site where over seven million programmers help each other with difficult programming problems. On Stack Overflow the audience votes for the best answer, so the answer you want is usually right at the top, not on page five.

I'm hoping that a site for programmers solving problems (and competing) on sites like Codechef, Topcoder, Codeforces, SPOJ etc. and contests like ACM ICPC, Google Codejam etc would have the same kind of network effect and turn into an amazing resource.

The proposal process is going on here:

http://area51.stackexchange.com/proposals/52595/competitive-programming

If you're interested in participating, go to that URL and click on the green "Commit" button.

What's most important is that we need about 50 more people with 200+ reputation on any of the other Stack Exchange sites. So maybe get on Stack Overflow and post or answer a few questions to get some rep there :)

Thanks!

• +20