CSP俄羅斯方塊(簡單易懂)

開始將題目理解成了,開始的列應該是從輸入圖案的最左端開始計算,將前面所有的空列都刪掉,代碼如下:


#include<bits/stdc++.h>
using namespace std;
const int N = 1e4+10;
const int M = 1e5+10;
int a[20][20];
int b[5][5];int main(){for(int i = 0 ; i < 15 ; i++){for(int j = 0 ; j < 10 ; j++){cin >> a[i][j];}}for(int i = 0 ; i < 4 ; i++){for(int j = 0 ; j < 4 ; j++){cin >> b[i][j];}}int k;cin >> k;int flag = 0;int res = 0;for(int i = 0 ; i < 4 ; i++){for(int j = 0 ; j < 4 ; j++){if(b[j][i] == 1){flag = 1;res = i;break;}}if(flag == 1){break;}}vector<vector<int>> c(4,vector<int>(2,0));int num = 0;for(int i = 0 ; i < 4 ; i++){for(int j = res ; j < 4 ; j++){if(b[i][j] == 1){c[num][0] = i;c[num][1] = k + j - res;num++;}}}int xd = 0;for(int i = 1 ; i < 18 ; i++){if(c[0][0]+i < 15 && c[1][0]+i < 15 && c[2][0]+i < 15 && c[3][0]+i < 15 && a[c[0][0]+i][c[0][1]] == 0 && a[c[1][0]+i][c[1][1]] == 0 && a[c[2][0]+i][c[2][1]] == 0 && a[c[3][0]+i][c[3][1]] == 0){xd++;}else{break;}}for(int i = 0 ; i < 4 ; i++){a[c[i][0]+xd][c[i][1]] = 1;}for(int i = 0 ; i < 15 ; i++){for(int j = 0 ; j < 10 ; j++){cout << a[i][j] << " ";}cout << endl;}return 0;
}

結果只拿到了60分。

仔細看題,題目里寫的是,只刪除最左端的列,也就是說不管圖案在哪里,都只刪除最左端的一列。比如說輸入的圖案是
0 0 0 1
0 0 0 1
0 0 0 1
0 0 0 1
,也只刪除最左列,即從第k列開始放的圖案是
0 0 1
0 0 1
0 0 1
0 0 1,
得到的圖案是這樣的:
在這里插入圖片描述

逆天了,我只能說CSP的出題人完全不靠譜

100分代碼:

#include<bits/stdc++.h>
using namespace std;
const int N = 1e4+10;
const int M = 1e5+10;
int a[20][20];
int b[5][5];int main(){for(int i = 0 ; i < 15 ; i++){for(int j = 0 ; j < 10 ; j++){cin >> a[i][j];}}int num = 0;vector<vector<int>> c(4,vector<int>(2,0));for(int i = 0 ; i < 4 ; i++){for(int j = 0 ; j < 4 ; j++){cin >> b[i][j];if(b[i][j] == 1){c[num][0] = i;c[num][1] = j;num++;}}}int k;cin >> k;for(int i = 0 ; i < 4 ; i++){c[i][1] += k - 1;}int xd = 0;for(int i = 1 ; i < 18 ; i++){if(c[0][0]+i < 15 && c[1][0]+i < 15 && c[2][0]+i < 15 && c[3][0]+i < 15 && a[c[0][0]+i][c[0][1]] == 0 && a[c[1][0]+i][c[1][1]] == 0 && a[c[2][0]+i][c[2][1]] == 0 && a[c[3][0]+i][c[3][1]] == 0){xd++;}else{break;}}for(int i = 0 ; i < 4 ; i++){a[c[i][0]+xd][c[i][1]] = 1;}for(int i = 0 ; i < 15 ; i++){for(int j = 0 ; j < 10 ; j++){cout << a[i][j] << " ";}cout << endl;}return 0;
}

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

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

相關文章

Redis的持久化方式:

Redis提供了兩種數據持久化的方式&#xff1a; RDB 該機制是指在指定的時間間隔內將內存中的數據集快照寫入磁盤。 AOF 該機制將以日志的形式記錄服務器所處理的每一個寫操作。 在Redis服務器啟動之初會讀取文件來重新構建數據庫&#xff0c;以保證啟動后數據庫中的數據是完…

leedcode【203】. 移除鏈表元素——Java解法

Problem: 203. 移除鏈表元素 題目思路解題方法復雜度Code效果 題目 給你一個鏈表的頭節點 head 和一個整數 val &#xff0c;請你刪除鏈表中所有滿足 Node.val val 的節點&#xff0c;并返回 新的頭節點 。 示例 1&#xff1a; 輸入&#xff1a;head [1,2,6,3,4,5,6], val…

OS復習筆記ch6-1

死鎖的原理 定義 一組進程中&#xff0c;其中每個進程因等待事件而阻塞&#xff0c;且所等待的事件只能被這組進程中的另一阻塞進程激發稱之為死鎖。 舉例如下 四個車輛希望緊迫的希望能很快通過&#xff0c;每輛車需要兩個象限的資源&#xff0c;然而四個車都只得到一個象…

golang調用aliyun的語音通話服務,復制直接使用

golang調用aliyun的語音通話服務 通過API使用語音通知/語音驗證碼——阿里云官方文檔SingleCallByTts - 發送語音驗證碼或文本轉語音類型的語音通知入門流程主要參數引入阿里云語音官方SDK-go版本完整代碼通過API使用語音通知/語音驗證碼——阿里云官方文檔 https://help.aliy…

電子電器架構 - AUTOSAR軟件架構介紹

電子電器架構 - AUTOSAR軟件架構介紹 我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 屏蔽力是信息過載時代一個人的特殊競爭力,任何消耗你的人和事,多看一眼都是你的不對。非必要不費力證明自己…

MFC Winsock 類:MFC 中的網絡編程

目錄 概述 一.MFC Winsock 類簡介 1.MFC Winsock 類的主要功能 2.MFC Winsock 類的主要優點 3.MFC Winsock 類的主要缺點 4.MFC Winsock 類的主要類 5.MFC Winsock 類示例 二.CAsyncSocket 類 1.主要功能 異步通信 事件驅動 數據傳輸 套接字選項 2.常用函數 創建…

Maven多環境打包配置

一、啟動時指定環境配置文件 在啟動springboot應用的jar包時&#xff0c;我們可以指定配置文件&#xff0c;通常把配置文件上傳到linux服務器對應jar包的同級目錄&#xff0c;或者統一的配置文件存放目錄 java -jar your-app.jar --spring.config.location/opt/softs/applicat…

matlab 圖像的中值濾波

目錄 一、功能概述1、算法概述2、主要函數3、計算公式二、代碼實現三、結果展示四、參考鏈接本文由CSDN點云俠翻譯,放入付費專欄只為防不要臉的爬蟲。專欄值錢的不是本文,切勿因本文而訂閱。 一、功能概述 1、算法概述 中值濾波是圖像處理中一種常用的非線性運算,用于減少…

間接平差——以水準網平差為例 (python詳細過程版)

目錄 一、原理概述二、案例分析三、代碼實現四、結果展示本文由CSDN點云俠原創,間接平差——以水準網平差為例 (python詳細過程版),爬蟲自重。如果你不是在點云俠的博客中看到該文章,那么此處便是不要臉的爬蟲與GPT生成的文章。 一、原理概述 間接平差的函數模型和隨機模型…

openai api的初次嘗試

不懂已經不去百度了&#xff0c;現在直接問chatgpt就解決絕大多數問題了。 OpenAI API目前還沒有官方支持的npm庫&#xff0c;但是您可以使用現有的第三方npm庫進行OpenAI API的訪問和使用。這里提供一個npm庫 openai-node 的安裝和使用方法&#xff1a; 在命令行或終端中使用…

Util和utils

Util FieldStats 這段代碼定義了一個名為FieldStats的Java類&#xff0c;位于com.cqupt.software_1.Util包中。它使用了lombok庫的Data和AllArgsConstructor注解&#xff0c;這些注解幫助生成了getter、setter、toString等方法&#xff0c;以及包含所有參數的構造函數。類中有…

區塊鏈會議投稿資訊CCF A--USENIX Security 2025 截止9.4、1.22 附錄用率

會議名稱&#xff1a;34th USENIX Security Symposium CCF等級&#xff1a;CCF A類學術會議 類別&#xff1a;網絡與信息安全 錄用率&#xff1a;2023年接收率29%&#xff0c;2024錄用的區塊鏈相關文章請查看 Symposium Topics System security Operating systems security …

vue實現可拖拽移動懸浮球

封裝懸浮球組件&#xff0c;文件名s-icons.vue <template><div ref"icons" class"icons-container" :style"{ left: left px, top: top px }"><slot></slot></div> </template> <script> export …

國產化服務器開啟NTP功能并向NTP時鐘服務器同步

1.備份/etc/chrony.conf文件&#xff1b; cp -rp /etc/chrony.conf /etc/chrony.conf.bak.20240522 2.修改chrony.conf文件&#xff0c;增加NTP時鐘信息。&#xff08;客戶端填寫時鐘同步服務器的IP地址或者域名&#xff0c;我這里寫的IP地址。下面Allow NTP Client是只允許…

Mysql 的 binlog 有幾種格式?

MySQL 的二進制日志&#xff08;binlog&#xff09;有三種格式&#xff0c;每種格式都有其特定的用途和優缺點。以下是詳細描述&#xff1a; 1. STATEMENT 描述: 記錄的是 SQL 語句。特點: 每條更改數據的 SQL 語句都會記錄在 binlog 中。相對較小&#xff0c;因為只記錄了 S…

數字圖像處理岡塞雷斯第四版課后習題答案【英文原版】

第二章 第三章 . 第四章 傅里葉變換是一個線性過程&#xff0c;而計算梯度的平方根和平方根則是非線性運算。傅里葉變換可以用來計算微分的差值(如問題4.50)&#xff0c;但必須在空間域中直接計算平方和平方根值。 (a)實際上&#xff0c;由于高通操作&#xff0c;環有一個暗中心…

在已創建的git工程中添加.gitignore

有些代碼創建git時&#xff0c;為了方便將所有文件都加入了git管理&#xff0c;但實際有些庫的Makefile文件和編譯目錄的文件不需要加入管理&#xff0c;否則每次提交或編譯后&#xff0c;git diff將看到非常多的冗余信息。而我們修改的核心代碼都淹沒在這些大量無用的信息里面…

Golang:gammazero/deque是一個快速環形緩沖區deque(雙端隊列)實現

gammazero/deque是一個快速環形緩沖區deque&#xff08;雙端隊列&#xff09;實現。 文檔 https://github.com/gammazero/deque 安裝 go get github.com/gammazero/deque代碼示例 先入先出隊列 package mainimport ("fmt""github.com/gammazero/deque&quo…

留守兒童|基于SprinBoot+vue的留守兒童愛心網站(源碼+數據庫+文檔)

留守兒童愛心網站 目錄 基于SprinBootvue的留守兒童愛心網站 一、前言 二、系統設計 三、系統功能設計 1系統功能模塊 2管理員功能模塊 3用戶功能模塊 四、數據庫設計 五、核心代碼 六、論文參考 七、最新計算機畢設選題推薦 八、源碼獲取&#xff1a; 博主介紹&…

STM_HAL_TIM_IC_(輸入捕獲,捕獲PWM波)

介紹 TM32微控制器提供了輸入捕獲&#xff08;Input Capture&#xff09;功能&#xff0c;這是一種用于精確測量外部信號脈沖寬度和周期的強大技術。輸入捕獲通常與定時器&#xff08;如TIM&#xff09;的高級控制定時器&#xff08;TIM1和TIM8&#xff09;或通用定時器&#…