You need to log in to make submissions.
Please read the general instructions for this exercise first. Here are the additional instructions specific to this task:
Design a more efficient algorithm that (at least in typical cases) does not need to try out all possible locations of the rectangle. Implement the algorithm efficiently on the CPU.
I will first run all kinds of tests to see that your code works correctly. You can try it out locally by running ./grading test
, but please note that your code has to compile and work correctly not only on your own computer but also on our machines.
If all is fine, I will run the benchmarks. You can try it out on your own computer by running ./grading benchmark
, but of course the precise running time on your own computer might be different from the performance on our grading hardware.
Name | Parameters |
---|---|
benchmarks/1 | nx = 100, ny = 100 |
the input is a multicolor image with 100 × 100 pixels | |
benchmarks/2a | nx = 199, ny = 199 |
the input is a structured black-and-white image with 199 × 199 pixels | |
benchmarks/2b | nx = 200, ny = 200 |
the input is a structured black-and-white image with 200 × 200 pixels | |
benchmarks/2c | nx = 201, ny = 201 |
the input is a structured black-and-white image with 201 × 201 pixels | |
benchmarks/3 | nx = 400, ny = 400 |
the input is a multicolor image with 400 × 400 pixels | |
benchmarks/4 | nx = 1000, ny = 1000 |
the input is a multicolor image with 1000 × 1000 pixels |
In this task your submission will be graded using benchmarks/4: the input is a multicolor image with 1000 × 1000 pixels.
The point thresholds are as follows. If you submit your solution no later than on Saturday, 31 August 2024, at 23:59:59 (Helsinki), your score will be:
Running time | Points |
---|---|
≤ 10.000 sec | 1 |
≤ 5.000 sec | 2 |
≤ 2.000 sec | 3 |
≤ 1.000 sec | 4 |
≤ 0.500 sec | 5 |
For late submissions you will not get any points.