最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【夏老師講模擬卷系列149】詳解四省聯(lián)考(數(shù)學(xué)·全部題目)

2023-02-24 00:57 作者:bili_39970481094  | 我要投稿

#include <iostream>

using namespace std;


//按動開關(guān),注意二維數(shù)組在內(nèi)存中的分布方式

void turn(bool *arr, int n, int x, int y) {

arr[y + x * n] ^= 1;

//對左側(cè)開關(guān)改變狀態(tài)

if (y - 1 >= 0) {

arr[y - 1 + x * n] ^= 1;

}

//對右側(cè)開關(guān)改變狀態(tài)

if (y + 1 <= 2) {

arr[y + 1 + x * n] ^= 1;

}

//對上側(cè)開關(guān)改變狀態(tài)

if (x - 1 >= 0) {

arr[y + x * n - n] ^= 1;

}

//對下側(cè)開關(guān)改變狀態(tài)

if (x + 1 <= 2) {

arr[y + x * n + n] ^= 1;

}

}


int main() {

bool end[9] = {1, 0, 0, 0, 0, 0, 0, 0, 0}; //結(jié)束狀態(tài)

int ans[8];//存儲結(jié)果,如果最終結(jié)果不符合要求,就存-1

for (int i = 0; i < 8; i++) {

int cnt = 0; //翻轉(zhuǎn)次數(shù)

bool start[9] = {0, 0, 0, 0, 0, 0, 0, 0, 0}; //起始狀態(tài)

//先對第一行狀態(tài)進行枚舉(內(nèi)存中是第0行)

if (i & 1 == 1) {

turn(start, 3, 0, 0);

cnt ++;

}


if ((i >> 1) & 1 == 1) {

turn(start, 3, 0, 1);

cnt ++;

}

if ((i >> 2) & 1 == 1) {

turn(start, 3, 0, 2);

cnt ++;

}

/*

開始從第二行第一列開始,逐行遍歷。

若上一行結(jié)果與答案不符,就按動開關(guān),使上一行結(jié)果符合要求,

最終檢測最后一行結(jié)果是否與結(jié)果相同。

一個開關(guān)不能按兩次,否則次數(shù)不是最小,

因為逐行遍歷,只有按下一行才能改變上一行的結(jié)果

*/

for (int j = 1; j < 3; j++) {

for (int k = 0; k < 3; k++) {

if (start[j * 3 - 3 + k] != end[j * 3 - 3 + k]) {

turn(start, 3, j, k);

cnt++;

}

}

}

for (int k = 0; k < 3; k++) {

//最后一行不符合結(jié)果,結(jié)果數(shù)組內(nèi)存上-1

if (start[6 + k] != end[6 + k]) {

ans[i] = -1;

goto l1;

}

}

ans[i] = cnt;

l1:

continue;

}

//選出最小結(jié)果

int min = 9;

for (int i = 0; i < 8; i++) {

if (ans[i] < min && ans[i] > 0) {

min = ans[i];

}

}

cout << min << endl;

}

【夏老師講模擬卷系列149】詳解四省聯(lián)考(數(shù)學(xué)·全部題目)的評論 (共 條)

分享到微博請遵守國家法律
河西区| 交口县| 孝昌县| 绥中县| 韶山市| 泸溪县| 阳山县| 原阳县| 满洲里市| 西吉县| 灵山县| 手游| 阜阳市| 纳雍县| 中方县| 祁阳县| 专栏| 花垣县| 商洛市| 和林格尔县| 邯郸市| 临武县| 金平| 江山市| 馆陶县| 宜川县| 环江| 钟山县| 庆元县| 姜堰市| 安义县| 五台县| 汨罗市| 安泽县| 砀山县| 尼勒克县| 开封县| 岐山县| 吉木萨尔县| 耒阳市| 治多县|