A Question On The Honour Code

Post here if you don't find any other place for your post. But please, stay on-topic: algorithms, programming or something related to this web site and its services.

Moderator: Board moderators

Post Reply
littledump
New poster
Posts: 25
Joined: Wed Jun 05, 2002 4:55 am
Location: London, ON, Canada
Contact:

A Question On The Honour Code

Post by littledump »

I was just wondering if you think its honourable to precalculate specific values then find a relationship.

I'm pretty sure this would be a good thing except for no input problems such as 138.

I brute forced my way through 138 but there was no way it would ever make the timelimit

So i took my output from my brute forcing output & determined a relationship & now I can make the program run in less time.

Would you say this is honourable?
xenon
Learning poster
Posts: 100
Joined: Fri May 24, 2002 10:35 am
Location: Scheveningen, Holland

Post by xenon »

everything is permitted in love and war...
look at the ranking for #138: the first 700 or so have CPU times of 0ms, so they just outputted the 10 asked values (like i did, btw).
the only thing that counts is a solution that is approved by the judge.
and hey, you saved it some clock cycles!
Stefan Pochmann
A great helper
Posts: 284
Joined: Thu Feb 28, 2002 2:00 am
Location: Germany
Contact:

Post by Stefan Pochmann »

Even though you're technically correct, I believe with "they just outputted the 10 asked values" you meant they have some printf-statements with no calculation. If it was meant that way, you're wrong. There is a way (see older threads about the problem) to truly compute the values in zero time.
xenon
Learning poster
Posts: 100
Joined: Fri May 24, 2002 10:35 am
Location: Scheveningen, Holland

Post by xenon »

You are right re #138. Now I looked at the problem again, I see the 'zero time' solution, so my statement about the 700 solvers was too hasty, altough I still suspect that a great deal of them (including myself) uses 10 printf statements.
This is, however, more a matter of 'personal satisfaction' than of 'ethics' in my opinion. Finding a slick solution to a problem definitely makes one feel better than using a clumsy one time spaghetti program to only get the required result. But that is beside the point here. In the end, it's only submitting an accepted solution that counts. And that is the only thing that can be tested with an online judge system.
There are a lot of ways to cheat to get a solution and better CPU times. In my eyes they are all permitted, as long as they are not ruled out by the system. The only one you are fooling is yourself.
Stefan Pochmann
A great helper
Posts: 284
Joined: Thu Feb 28, 2002 2:00 am
Location: Germany
Contact:

Post by Stefan Pochmann »

That's a good explanation. Btw, I remember a local contest at my university where several teams of newbies thought about precomputing, but didn't do it because they *thought* it is forbidden. Of course it was not and in the discussion after the contest they were a little bit surprised to see the judges suggest precomputing.

Conclusion of that story: (almost ) everything is allowed unless it's explicitly forbidden. If you're not sure, ask. And don't walk over to the leading team with your big ax just because it's not forbidden, I guess some rules don't have to be made explicit ;-)

In general, I'd say you should ask about everything that you'd not like the judges to know that you did it. Maybe it's not a bad thing and allowed.
ftomi
Learning poster
Posts: 64
Joined: Sun Jan 06, 2002 2:00 am
Location: Hungary
Contact:

Re: A Question On The Honour Code

Post by ftomi »

Well, but littledump asked an other thing.
littledump wrote:So i took my output from my brute forcing output & determined a relationship & now I can make the program run in less time.
He asked if it is honourable.
I think it is. Especially in a contest. Sometimes it's very difficult to prove something, but you can easily guess the relationship between the input and output. Of course, it's better, if you know what you do. So, after you get accepted, let you think about why is it good. :wink:
Post Reply

Return to “Other words”