hsmfawaz's blog

By hsmfawaz, history, 4 months ago, In English,

Hello everyone,

I'm not a good English writer and i hope you understand me.

For the last 3 days i was thinking why i didn't solve a specific problem in a running round and some people with same rank as me solved it.

Lets go ahead to the result of thinking :

1.they are smarter than me (i have nothing to do with talent).

2.they solved more problems than me or a specific problems that helped them to solve the problem that i couldn't solve (let's try hard work beat talent).

So i developed a PHP script to get me the top common problems from the top 10 users in a specific round i participated in it with same rank as me (Problems i didn't solve)

You can use the script here hunterscript.com

For example i used the script to generate a sheet of problems as tourist in the last round he participate in.

you can check result here

Due to the limited resources for the host (512 ram and 100 process only).

generating the report will take about 5 minute or maybe more if there is long queue(every report go to queue)

if you faced any issue feel free to contact me

i hope this script helps you.

repository at Github

Change log :-

  1. Fix issue that prevent handles with dots or other special characters from making report.
  2. Adding confirmation before requesting the report (by 0day20hour)
 
 
 
 
  • Vote: I like it  
  • +62
  • Vote: I do not like it  

»
4 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by hsmfawaz (previous revision, new revision, compare).

»
4 months ago, # |
  Vote: I like it +1 Vote: I do not like it

great job making this tool, although the usefulness of it is a bit questionable (in my opinion)

  1. maybe it is actually a common topic, not just specific problems
  2. the top ppl have solved a lot of problems in the past, so you might end up getting a list of problems that aren't related to the problems in a specific round
  • »
    »
    4 months ago, # ^ |
      Vote: I like it +5 Vote: I do not like it

    Thanks so much.

    The current idea i got is to get the most solved problem from the top users with same rank so i will try to develops it with more features

»
4 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Interesting idea. Unfortunately wasn't able to test it out, due to RegEx for the handle being different to one on Codeforces, currently it doesn't allow dots, so my handle doesn't work

»
4 months ago, # |
  Vote: I like it +33 Vote: I do not like it

It's good that you can make such a script + a site with cute design (I certainly cannot).

But your criterion of what problems are useful is not the best, I think. It is more like 'take 10 people of nearly the same level as me, find a contest in which most of them participated, and give me problem A from this contest'. Doesn't sound like what you meant?

However, if it will motivate you to solve more problems — it is good.

  • »
    »
    4 months ago, # ^ |
    Rev. 3   Vote: I like it -10 Vote: I do not like it

    First i take the top 10 of every rank at round then i get all thier submissions then i filter this submissions to get most solved by the top 10 users with ranks same as me

    So i have a good sheet that may help me(not refer to me but refer to the user who request the report) to increase my knowledge. If you have idea to optimize this script it would be so good.

»
4 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by hsmfawaz (previous revision, new revision, compare).

»
4 months ago, # |
Rev. 2   Vote: I like it +8 Vote: I do not like it

The resources you mentioned are more than enough to serve few users promptly. Can you share the actual logic implemented behind this?

Anyway, I like to make a suggestion:

  1. You meant top X as the same rank as user. I am not sure what you meant, but what I guessed is, "If I request a report my stats will be compared to Top X experts."
  2. In this case CF has only few ranks. Why not preprocess Top X handles stats for each rank at a regular interval? Say after a CF contest? When a user request come, you only need to process his stats only with preprocessed data.
  3. Clicking "create report" doesn't provide any feedback. There should be some confirmation that I did it right.

And, Nice tool.

  • »
    »
    4 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    First thanks for your idea i will work with it .

    1- it will request a report with your rank at that contest not current rank 2- your idea is good i will make it. 3- i will do it right now .

    resources is week vs the implementation for the following reason :

    imagine if someone request a report with contest that top 10 is users like tourist and petr that have more than 8k submissions and say with have 50k submissions

    First i must filter this 50k submissions to get all the AC submissions with unique problems.

    but to optimize it a little i save users so it would be fast in the next reports.(the more reports done the fast next report will be)

    i will make a repository(GitHub) for the whole project soon.

»
4 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by hsmfawaz (previous revision, new revision, compare).