日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[POJ 1222] EXTENDED LIGHTS OUT

發布時間:2025/3/15 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [POJ 1222] EXTENDED LIGHTS OUT 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目

http://acm.pku.edu.cn/JudgeOnline/problem?id=1222


描述

給你一個5行6列的矩陣分別表示30個燈,矩陣map[i][j]為1表示燈亮著, 0表示燈沒亮. 要求你輸出解決方案. press[i][j]為1表示按一下,0表示不按。使得最后狀態為所有燈都熄滅。


分析

高斯消元法(Gaussian elimination method)

=>
對于每個格子 map[i][j], 能影響他的格子為 (i-1, j), (i, j-1), (i+1, j), (i, j+1), 以及自身(i, j).

=> (press[i-1][j] + press[i][j-1] + press[i+1][j] + press[i][j+1] + press[i][j] + map[i][j]) & 1 = 0 // press[x][y] 表示 0: 不按; 1: 按下.

=> (press[i-1][j] + press[i][j-1] + press[i+1][j] + press[i][j+1] + press[i][j]) & 1 = map[i][j]

那么就可以為每個格子列出一個方程, 得到共 30 個方程的方程組, 進而用高斯消元法來解方程組.

// 先給格子編好號 1 -> 30
// 然后就可以壓縮為一維
=>
1 2 3 4 5 6
7 8 9 10 11 12
13 14 15 16 17 18
19 20 21 22 23 24

將涉及不到的格子的系數設為 0.

然后就是普通的高斯消元了.

O(n3)

還有沒有比高斯消元更優化的方法?
可不可以從未知量系數非0即1來考慮?

總結

以上是生活随笔為你收集整理的[POJ 1222] EXTENDED LIGHTS OUT的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。