【每日一題】—— B. StORage room(Codeforces Round 912 (Div. 2))(位操作符)

🌏博客主頁:PH_modest的博客主頁
🚩當前專欄:每日一題
💌其他專欄:
🔴 每日反芻
🟡 C++跬步積累
🟢 C語言跬步積累
🌈座右銘:廣積糧,緩稱王!

一.題目描述

題目大意:

塞浦路斯的天氣非常炎熱。因此,Theofanis 將此視為創建一家冰淇淋公司的契機。
他把冰淇淋鎖在大儲藏室里,防止其他冰淇淋生產商進入。然而,他忘記了密碼。幸運的是,這把鎖對健忘的人有特殊的功能!
要打開這把鎖,你需要找到一個由 n n n 個元素組成的數組 a a a

  • KaTeX parse error: Expected 'EOF', got '&' at position 11: 0 \le a_i &?lt; 2^{30}
  • M i , j = a i ∣ a j M_{i,j} = a_i | a_j Mi,j?=ai?aj? 對于所有 i ≠ j i \neq j i=j ,其中 ∣ | 表示 bitwise OR 運算。
    這個鎖有一個 bug,有時它會給出沒有任何解的表格。在這種情況下,冰激凌將永遠保持冰凍狀態。
    你能找到一個數組來打開鎖嗎?

題目鏈接:

B. StORage room(Codeforces Round 912 (Div. 2))

二.思路分析

  • 首先需要知道 | 操作符的特點:只有兩個數對應位上都是0時,結果的對應才是0,否則是1
  • 所以我們可以假設xi為0x7fffffff(每一位上都是1),然后用這個數與結果進行&操作,操作結束之后,就會把肯定是0的位上的1變成0(覺得難理解的可以試著用樣例模擬一下)

三.代碼展示

//https://codeforces.com/contest/1903/problem/B
//兩個數|,如果結果的某一位為0,那么這兩個數對應的位也為0
//
#include<iostream>
#include<algorithm>
#include<string>
#include<deque>
#include<map>
#include<queue>
#include<vector>
#include<cstring>
#define int long long
using namespace std;int s[2000][2000];
int v[200020];
void solve()
{memset(v,0x7fffffff,sizeof(v));int n;cin>>n;for(int i=0;i<n;i++){for(int j=0;j<n;j++){cin>>s[i][j];}}for(int i=0;i<n;i++){for(int j=0;j<i;j++){v[i]&=s[i][j];}for(int j=i+1;j<n;j++){v[i]&=s[i][j];}}int flag=1;for(int i=0;i<n;i++){for(int j=0;j<n;j++){if(i!=j&&(v[i]|v[j])!=s[i][j]){flag=0;break;}}if(flag==0){break;}}if(flag==0){cout<<"NO"<<"\n";}else if(n==1){cout<<"Yes"<<"\n";cout<<"1"<<"\n";}else{cout<<"Yes"<<"\n";for(int i=0;i<n;i++){cout<<v[i]<<" ";}cout<<"\n";}
}
signed main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int t;cin>>t;while(t--){solve();}return 0;
}

最后:

每日一題系列旨在養成刷題的習慣,所以對代碼的解釋并不會特別詳細,但足夠引導大家寫出來,選的題目都不會特別難,但也不是特別簡單,比較考驗大家的基礎和應用能力,我希望能夠將這個系列一直寫下去,也希望大家能夠和我一起堅持每天寫代碼。

之后每個星期都會不定期更新codeforces和atcoder上的題目,想要學習算法的友友們千萬別錯過了,有什么疑問歡迎大家在評論區留言或者私信博主!

在這里送大家一句話:廣積糧,緩稱王!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/214620.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/214620.shtml
英文地址,請注明出處:http://en.pswp.cn/news/214620.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

工業傳感器

工業傳感器 電子元器件百科 文章目錄 工業傳感器前言一、工業傳感器是什么二、工業傳感器的類別三、工業傳感器的應用實例四、工業傳感器的作用原理總結前言 工業傳感器的應用可以幫助提高工業過程的效率、安全性和可靠性,實現工業自動化和智能化。 一、工業傳感器是什么 工…

使用阿里云國際CDN加速后網站無法訪問的排查步驟

使用阿里云國際CDN加速后網站無法訪問的排查步驟&#xff0c;下面是一些常見的問題&#xff0c;以&#xff1a;www.c.9he.com為例&#xff0c;如果解決不了來信服務器廠商解決。 檢查CDN訪問異常是CDN節點的問題還是源站問題 如果是源站訪問異常&#xff0c;請直接排查源站服務…

Faster R-CNN

Faster R-CNN是作者Ross Girshick繼Fast R-CNN后的又一力作。同樣使用VGG16作推理速度在GPU上達到5fps(包括候選區域的生成)&#xff0c;準確率為網絡的backbone&#xff0c;也有進一步的提升。在2015年的ILSVRC以及COCO競賽中獲得多個項目的第一名。 算法流程 右邊這部分和Fa…

算法Day27 身材管理(三維背包)

身材管理&#xff08;三維背包&#xff09; Description Input Output Sample 代碼 import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner new Scanner(System.in);int n scanner.nextInt(); // 輸入n的值int money sca…

KaiOS 運營商相關文件operator_variant_manager.js代碼功能和調試

gaia/apps/system/js/operator_variant_manager.js at master mozilla-b2g/gaia GitHub js文件接口功能 No 接口/常量 功能 1 OperatorVariantManager var OperatorVariantManager function(core) 2 OperatorVariantManager.IMPORTS OperatorVariantManager.I…

搜集怎么繪制三維曲線和曲面?

1、針對函數對象是單一變量、兩個函數的情況。用plot3函數&#xff1b;&#xff08;三維曲線&#xff09; 看一下matlab官方的例子&#xff1a; t 0:pi/50:10*pi; st sin(t); ct cos(t); plot3(st,ct,t) 繪制出來的曲線&#xff1a; 幾個比較關鍵的點&#xff1a; &…

【Marp】基于Markdown-Marp快速制作PPT

【Marp】基于Markdown-Marp快速制作PPT 文章目錄 【Marp】基于Markdown-Marp快速制作PPT零、參考資料一、Marp基本語法&#xff08;創建分頁&#xff0c;排版圖片&#xff0c;更換主題&#xff0c;Marp擴展指令修改樣式&#xff09;1、創建新的PPT頁面2、插入圖片 & 排版圖…

小功能實現(二十)分類統計,Map取值自增

前言 從Map取值&#xff0c;根據獲取的類型進行統計&#xff0c;若有則1&#xff0c;若無則新增新的分類純屬靈機一動 步驟 for (String str : stringList) {int counttypeMap.getOrDefault(str,0);typeMap.put(resultList[2],count); }

解決刪除文件后 WSL2 磁盤空間不釋放的問題

查看 Linux distributions 打開 PowerShell 并執行如下命令&#xff1a; wsl -l -v 搜索并找到 ext4.vhdx 文件 我的 ext4.vhdx 文件如下&#xff1a; C:\Users\xxx\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc\LocalState\ext4.vhdx 由于…

vue中yarn install超時問題

囚籠中的網絡固然可以穩定局勢&#xff0c;不讓猴子們得以隨時醒悟&#xff01;給你吃的你就好好吃&#xff0c;不要有其他的翻然醒悟的時刻。無論如何&#xff0c;愚蠢的活著也是一種幸福&#xff0c;聽著那些耐心尋味的統計幸福指數&#xff0c;我們不由的幸福的一批。。 最…

軟件開發流程分析

軟件開發流程分析 相關概念1 原型設計2 產品設計3 交互設計4 代碼實現詳細步驟 相關概念 前端&#xff1a;自研API&#xff0c;調用第三放API 后端&#xff1a;自研API&#xff0c;第三方API 數據庫&#xff1a;Mysql&#xff0c;數據采集&#xff0c;數據遷移 服務器&#xf…

算法與數據結構--最短路徑Dijkstra算法

題目&#xff1a; 算法與數據結構實驗題 10.20 迷路 ★實驗任務 學長經常迷路&#xff0c;現在他又遇到問題了&#xff0c;需要求救。 假設他有一張地圖&#xff0c;上面有N個點&#xff0c;M條路&#xff0c;他現在在編號為S的地方&#xff0c;想要去編號為E的地方&#x…

Linux中的幾個重要指令

關於 Process 處理的指令 1. ps ps 是用來顯示目前你的 process 或系統 processes 的狀況。 以下列出比較常用的參數: 其選項說明如下: -a 列出包括其他 users 的 process 狀況。 -u 顯示 user - oriented 的 process 狀況 。 -x 顯示包括沒有 terminal 控制的 process 狀…

程序員養生指南。。。

【關注微信公眾號&#xff1a;跟強哥學SQL&#xff0c;回復“筆試”免費領取大廠SQL筆試題。】 作為一個程序員&#xff0c;確實需要特別關注健康問題。長時間的熬夜加班、久坐不動等工作習慣可能會導致身體亞健康狀態。以下是一些養生延壽的建議&#xff1a; 1. 定期運動&…

數據結構:第13關:查找兩個單詞鏈表共同后綴的起始結點

任務描述編程要求 輸入輸出測試說明來源 任務描述 本關任務&#xff1a;假定采用帶頭結點的單鏈表保存單詞&#xff0c;當兩個單詞有相同的后綴時&#xff0c;則可共享相同的后綴空間。 例如&#xff0c;“loading”和“being”的存儲映像如下圖所示&#xff1a; 設str1和str2…

離線環境下安裝python庫(推薦pip download)

離線環境下安裝python庫&#xff08;推薦pip download&#xff09; 目錄 1.需求 2.失敗操作&#xff08;注意&#xff09; 3.成功操作 4.其它參考 1.需求 機器部署web系統環境后&#xff0c;就不可再次聯網&#xff0c;所以升級python web后端&#xff0c;需要離線安裝pyt…

【LLM】大模型之RLHF和替代方法(DPO、RAILF、ReST等)

note SFT使用交叉熵損失函數&#xff0c;目標是調整參數使模型輸出與標準答案一致&#xff0c;不能從整體把控output質量&#xff0c;RLHF&#xff08;分為獎勵模型訓練、近端策略優化兩個步驟&#xff09;則是將output作為一個整體考慮&#xff0c;優化目標是使模型生成高質量…

火山引擎邊緣計算用硬核助力賽事直播

經過一個多月激烈爭奪&#xff0c;2023英雄聯盟全球總決賽終于在11月19日落下帷幕。精彩的對決和高熱話題使得直播平臺觀賽人數暴增&#xff0c;給直播平臺穩定性和資源儲備提出了巨大的考驗。

推薦3dmax常用15款插件,快來了解一下吧!

推薦3dmax常用15款插件&#xff0c;快來了解一下吧&#xff01; 插件是3ds MAX軟件的重要組成部分&#xff0c;提供了太多便利&#xff0c;也提升了建模、渲染和動畫的效率&#xff0c;下面就給大家推薦25款常用的3dMax插件。 1&#xff09;DashedShape DashedShape實線轉虛線…

CentOS修改SSH端口號和禁止root用戶直接登錄

原文在 https://cloud.tencent.com/developer/article/1124500 1、使用vi編輯器打開ssh配置文件 /etc/ssh/sshd_config Port 22 #在第三行或第四行&#xff0c;如果前面有井號&#xff0c;請刪除&#xff0c;修改為65534以下即可 2、更加安全的設置&#xff0c;禁止ROOT登陸…