ACTIV - Activities
Ana likes many activities. She likes acrobatics, alchemy, archery, art, Arabic dances, and
many more. She joined a club that offers several classes. Each class has a time interval
in every week. Ana wants to sign up for many classes, but since they overlap in time, she
looks for a subset of non-overlapping classes to attend. A subset is non-overlapping if it
does not contain two classes that overlap in time. If a class starts at the time another
class ends, this is not considered overlapping.
Ana decided to list all the non-overlapping non-empty subsets of classes. Then she will
choose the subset she likes best. In order to predict the amount of paper needed to write
the list, she wants you to calculate how many of these subsets there are.
Each test case is described using several lines. The first line contains an integer N
indicating the number of classes the club offers (1 ≤ N ≤ 105 ). Each of the next N lines
describes a class using two integers S and E that represent the starting and ending times
of the class, respectively (1 ≤ S < E ≤ 109 ). The end of input is indicated with a line
containing a single −1.
For each test case, output a single line with a single integer representing the number of
non-overlapping non-empty subsets of classes. To make your life easier, output only the
last 8 digits of the result. If the result has less than 8 digits, write it with leading zeros
to complete 8 digits.
remember to take mod of 10^8 ,costed me 3 WA for that
Dynamic Programming makes me feels sad
just take mod 10^8 at every dp step,somehow did'not see that for a long time
You could do to_string in c++ and output the characters.
Cost me 2 WA because I was taking mod 10^8+7 instead of just 10^8 :(
AFTER 10 WA AC (0.16)
Doing sort and then O(nlogn) still showing TLE ..
I am doing a sort, then a loop and within it just a binary search but getting TLE still. Plz help.
For output format, use setfill() with setw() in C++.