You are given N segments defined by their starting point ai and end point bi. You need to determine the number of points such that at least K segments contain them.
What is the most efficient way to do this task? Thanks in advance.
# | User | Rating |
---|---|---|
1 | tourist | 4009 |
2 | jiangly | 3823 |
3 | Benq | 3738 |
4 | Radewoosh | 3633 |
5 | jqdai0815 | 3620 |
6 | orzdevinwang | 3529 |
7 | ecnerwala | 3446 |
8 | Um_nik | 3396 |
9 | ksun48 | 3390 |
10 | gamegame | 3386 |
# | User | Contrib. |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
2 | maomao90 | 163 |
4 | atcoder_official | 161 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 157 |
8 | TheScrasse | 154 |
9 | nor | 153 |
9 | Dominater069 | 153 |
You are given N segments defined by their starting point ai and end point bi. You need to determine the number of points such that at least K segments contain them.
What is the most efficient way to do this task? Thanks in advance.
Name |
---|
You need to take a look this problem on codeforces .
I am sure this will help you.
Well there was a task on Codeforces similar to this, but I will describe the idea here: save a vector of points. Starting points are type 1, ending points are type 0. Save into the vector a pair, <position, type>. Now sort the vector based on the positions, and also keep track of the current number of segments. Here the task is now pretty simple, just check our current count with K and add to answer the appropriate values