NOIP2017提高組初賽問題求解第一題如何用編程方式求解?
01-08
要求: 1、保證效率 2、要輸出方案謝謝大家
用高斯消元解異或方程組
參考我的博客https://cyyself.name/2017/08/lights-off-game/
當時NOIP2017初賽考完後一個朋友告訴我他看我的博客學會了這種做法順利地手算高斯消元做了出來,而我自己卻認為NOIP初賽應該不會考這樣的套路,於是先放一邊繼續做後面的,結果最後沒時間做。
不過和我同考場的一位NOI Ag大佬表示他手模做出來了。(可以理解為A*+迭代加深搜索)謝邀。nbc當場手算高斯消元。
經典熄燈問題吧…
最暴力的就是2^n(n是格子總數) 然而這個數據下這個複雜度電腦都可以秒出答案
但發現只要確定最靠上的塊要不要操作(就是上面沒有塊的塊 把上換成下左右也行) 就可以唯一確定其他的塊要不要操作 複雜度O(2^n*n*m) 放在題目里就是2^5*8 手算都可以接受
複雜度最優的是解方程 高斯消元 複雜度O((n*m)^3) 題目里就是13^3 好像不比上面的好算迭代加深胡亂DFS一下或許可以?(你看這個lxk又在口胡了)
推薦閱讀: