AT_caddi2018_d.Square

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

高桥君有一个 NN 行 NN 列的网格。网格中从上往下第 ii 行,从左往右第 jj 列的格子记作 (i,j)(i,j)。特别地,左上角的格子是 (1,1)(1,1),右下角的格子是 (N,N)(N,N)。

在高桥君拥有的网格中,有 MM 个格子已经被写入了整数 00 或 11。第 ii 个被写入的格子的相关信息用三个整数 ai,bi,cia_i, b_i, c_i 表示,表示在格子 (ai,bi)(a_i, b_i) 上写入了整数 cic_i。

高桥君打算在剩下的格子中填入 00 或 11,使得满足以下条件。请你求出所有可能的填法数量对 998244353998244353 取模的结果。

  • 对于任意 1≤i<j≤N1 \leq i < j \leq N,以 (i,i)(i,i) 为左上角、(j,j)(j,j) 为右下角的正方形区域内,填入的 11 的个数必须是偶数。

输入格式

输入以如下格式从标准输入读入。

NN MM
a1a_1 b1b_1 c1c_1
a2a_2 b2b_2 c2c_2
⋮\vdots
aMa_M bMb_M cMc_M

输出格式

输出所有满足条件的填法数量对 998244353998244353 取模的结果。

输入输出样例

  • 输入#1

    3 3
    1 1 1
    3 1 0
    2 3 1

    输出#1

    8
  • 输入#2

    4 5
    1 3 1
    2 4 0
    2 3 1
    4 2 1
    4 4 1

    输出#2

    32
  • 输入#3

    3 5
    1 3 1
    3 3 0
    3 1 0
    2 3 1
    3 2 1

    输出#3

    0
  • 输入#4

    4 8
    1 1 1
    1 2 0
    3 2 1
    1 4 0
    2 1 1
    1 3 0
    3 4 1
    4 4 1

    输出#4

    4
  • 输入#5

    100000 0

    输出#5

    342016343

说明/提示

限制条件

  • 2≤N≤1052 \leq N \leq 10^5
  • 0≤M≤min⁡(5×104,N2)0 \leq M \leq \min(5 \times 10^4, N^2)
  • 1≤ai,bi≤N (1≤i≤M)1 \leq a_i, b_i \leq N \ (1 \leq i \leq M)
  • 0≤ci≤1 (1≤i≤M)0 \leq c_i \leq 1 \ (1 \leq i \leq M)
  • 如果 i≠ji \neq j,则 (ai,bi)≠(aj,bj)(a_i, b_i) \neq (a_j, b_j)
  • 所有输入均为整数

样例说明 1

例如,以下几种填法都满足条件。

101   111
011   111
000   011

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页