|시간 제한||메모리 제한||제출||정답||맞은 사람||정답 비율|
|3 초||512 MB||34||18||10||62.500%|
You have been hired to supervise the project of a new amusement park. The park will have a special gimmick: directed slides that can get customers from one attraction to another quickly and in an entertaining way.
The park owner has given you the current project: a list of planned attractions and a list of slides that should be built between them. However, him being a businessman, he casually envisioned the impossible: among other things, he projected a slide coming from the Haunted Castle to the Roller Coaster, another from the Roller Coaster to the Drop Tower, and a third from the Drop Tower to the Haunted Castle. As the slides can only go downhill, it is evident why this is a problem. You don’t have the luxury of ignoring the laws of physics when building the park, so you have to request changes in the project. Maybe he would accept reversing the slide between the Drop Tower and the Haunted Castle?
For a given project, find and report the sum of costs all legal proposals. Since this number may be large, output it modulo 998, 244, 353.
The first line contains two space-separated integers n, m (1 ≤ n ≤ 18, 0 ≤ m ≤ n(n − 1)/2) – the number of attractions and the number of slides, respectively. The attractions are numbered 1 through n.
Then, m lines follow. The i-th of these lines contains two space-separated integers ai, bi (1 ≤ ai, bi ≤ n) denoting a slide from ai to bi. You may assume that:
Output one line with a single integer, the sum of costs of all legal proposals modulo 998, 244, 353.
2 1 1 2
3 3 1 2 2 3 1 3
In the first example, there are two proposals:
As both proposals are valid, the answer is 0 + 1 = 1.
In the second example, there are eight proposals with the slide directions as follows:
The second proposal is not legal, as there is a slide sequence 1 → 2 → 3 → 1. This means that the attraction 1 has to be strictly higher than ifself, which is clearly impossible. Similarly, the seventh proposal is not legal. The answer is thus 0 + 1 + 2 + 1 + 2 + 3 = 9.