1 / 5
Jun 2004

Hello, there!

There are obviously some problems with the linkage of the default ghc libraries at the system judge.
I tried to use the Text.ParserCombinators.Parsec.Expr module for solving problem 4 (Transform the Expression). But I got compile errors from the linker.
Are there any special hierarchical qualifiers I have to adhere to? Or is it just, that there libraries aren't properly installed?

thx

cu,
robin

It seems the compiler really is broken.
It will be replaced with a new one, probably tomorrow.

Thanks for the info.

We use ghc 5.04.3 now, with -O switch (-O0 before).
A few of your solutions had been retested. Only one AC, though, and two dreaded TLEs.

I checked your "Complicated Expressions" solution, I had to allow about 80 megs of ram and it ran over a minute (giving WA in the end, it didn't omit some parentheses, by the way). So adjusting time limits can't be the solution for some problems..

I suppose, you tested my first submission of the problem (there was a minor bug in it - added one line and submitted it again on 2004-06-17 00:00:01 [submission number 1655]).
I checked the efficiency myself on the original judge input from the problem source. On the slower of the two computers (500 MHz) it ran 24 sec giving a correct result.
As for the memory usage, this is a natural problem of functional programming, because you have to do almost everything recursively.

But I will try to write a faster IO routine which uses less memory, because I think I am not far away from an acceptable solution...

Yes it was that one smile I didn't notice the latter was different.

I tried that solution with an extended time limit and it gave an AC in 72 seconds (it didn't need extending memory limit now). I think we can't extend time limit so much (it's 20s now), probably some brute force programs in C would start to get AC..
The PC all programs are ran on now is Pentium 166 MMX, by the way.

Yes, but it's not such a big problem as time limits; few problems become much easier given enough memory.. Right now, memory limits shown in problem's description are always increased by a ~40MB to allow all interpreters (especially java) to run. Later, probably a special flag for problems will be introduced, saying the memory limit is playing a key role and is not extended and it is solvable only in a few chosen languages.