   Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
Register
Language:
Circle Drawing
 Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 2442 Accepted: 361

Description

Graphics libraries usually implement drawing of graphics primitives, like lines, polygons and circles. Your task is to write a program that draws circles.

Graphic canvas is represented as an array of Xsize by Ysize pixels. Each pixel have a color ranged from 0 to 9. Initially all pixels have color 0. Pixels are thought of as small sqares with the side of length 1. A circle with center (xc, yc) and radius R is a set of pixels (x, y) satisfying the inequality (x − xc)2 + (y − yc)2 ≤ R2

To draw a circle, your program should set the color of all pixels in a set defined above to the color of the circle. After drawing N given circles, the program should output the color of all pixels of the canvas.

Input

Input contains numbers Xsize Ysize N followed by N sets of numbers xi yi Ri ci, describing the coordinates of center, radius and color of i-th circle.
1 <= Xsize, Ysize <= 1000, 1 <= N <= 10000, 0 <= xi < Xsize, 0 <= yi < Ysize, 1 <= Ri <= 212, 0 <= ci <= 9.

Output

Output should contain Ysize lines of Xsize characters each, where i-th character of j-th line is a digit corresponding to color of the pixel (i, j).

Sample Input

```5 5 1
2 2 1 3
```

Sample Output

```00000
00300
03330
00300
00000
```

Hint

This problem has huge input and output data,use scanf() and printf() instead of cin and cout to read data to avoid time limit exceed.

Source

Northeastern Europe 2004, Far-Eastern Subregion

[Submit]   [Go Back]   [Status]   [Discuss] Home Page Go Back To top