審美課 位運算 題解

2021-10-02 06:34:46 字數 489 閱讀 7394

一開始傻傻的超原始暴力,只拿了70分

後來參考了別人的思路用位運算解出來了

思路:①兩個二進位制數若完全相反,異或結果為全一,如10010和01101異或結果是11111

②將二進位制轉化為十進位制

③用乙個陣列記錄下每個數出現的次數

④只需要遍歷每個數a,將其與全1異或,得到的結果b的個數就是與a完全相反的個數

我的**:

#include

using

namespace std;

int num[

10000000];

//陣列必須開這麼大,少乙個零都不行

intmain()

ans +

= num[tmp^maxx]

;//每個同學和前面的同學比較看有沒有全反的,所以後面不用除以2

num[tmp]++;

tmp =0;

} cout<}

審美課 位運算題

oj 藍橋杯的題,比較簡單的乙個題目,因為畫最多只有20幅,且小朋友的判斷只存在兩種狀態,所以可以直接使用乙個二進位制數來表示乙個小朋友的判斷,這樣就可以非常簡單了儲存所有小朋友的判斷結果,且利用 運算子,也能非常簡單的判斷兩個小朋友的判斷是否完全不相同。需要注意的是,題目中說的是完全相反。incl...

位運算 審美課

先看一些基本的位運算 學位運算為以後狀壓,壓位做下鋪墊吧。題目描述 樣例輸入 3 2 3個同學 2幅畫,判斷完全相反的對數 1 00 1 1 0樣例輸出 樣例說明 同學1和同學2的答案完全相反 同學2和同學3的答案完全相反 所以答案是2。總的來說就是res儲存20位所有的狀態,用全1狀態異或同學狀態...

審美課(位運算 map標記)

問題描述 審美的歷程 課上有n位學生,帥老師展示了m幅畫,其中有些是梵谷的作品,另外的都出自五歲小朋友之手。老師請同學們分辨哪些畫的作者是梵谷,但是老師自己並沒有答案,因為這些畫看上去都像是小朋友畫的 老師只想知道,有多少對同學給出的答案完全相反,這樣他就可以用這個資料去揭穿披著皇帝新衣的抽象藝術了...