AT_abc348_c [ABC348C] Colorful Beans 題解

題目傳送門

解題思路

對于每種顏色的豆子,我們先找到美味度最小的那個,最后找出這些不同種類的豆子中美味度最大的即可。

那我們怎么找到第 i i i 種豆子中美味度最小的那個呢?這里給出兩種思路:

  1. 使用桶的思想標記。
  2. 對于每一種的豆子按照美味度從大到小排序。

注意: 如果你使用的是思路一,那么你不能使用數組進行標記,因為數據范圍很大,因此我們可以使用 map 進行標記。

第一種思路的代碼:

#include <bits/stdc++.h>
using namespace std;
#define int long long
struct node {int a, c;
}b[200010];
map<int, int> m;
signed main() {
ios::sync_with_stdio(false);cin.tie(0), cout.tie(0);int n;cin >> n;for (int i = 1; i <= n; i++) {cin >> b[i].a >> b[i].c;if (m[b[i].c] == 0)m[b[i].c] = b[i].a;else m[b[i].c] = min(m[b[i].c], b[i].a);}int ans = -1e9;for (int i = 1; i <= n ;i ++){ans = max(m[b[i].c], ans);}cout << ans;return 0;
} 

第二種思路的代碼:

#include <bits/stdc++.h>
using namespace std;
#define int long long
struct node {int a, c;
}b[200010];
map<int, int> m;
bool cmp(node a, node b){if (a.c != b.c)return a.c < b.c;return a.a < b.a;
}
signed main() {
ios::sync_with_stdio(false);cin.tie(0), cout.tie(0);int n;cin >> n;for (int i = 1; i <= n; i++)cin >> b[i].a >> b[i].c;sort(b + 1, b + 1 + n, cmp);int ans = -1e9;for (int i = 1; i <= n; i++)if (b[i].c != b[i - 1].c)ans = max(ans, b[i].a);cout << ans;return 0;
}

總結

這道題目還是很水,主要考察的是桶或者結構體排序,如果需要程序運行速度更快,建議大家使用第二種方法完成這道題目,因為本題使用第二種方法比第一種方法快兩倍,如果需要以最快的速度完成這道題,那么建議使用第一種方法,因為代碼要短 50 50 50 個字符。

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

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

相關文章

向日葵抓住哪三個要點,幫助企業構建專業技術支持服務體系?

售后技術支持是銷售行為的延續&#xff0c;在存量時代企業是否能夠提供優質專業的售后技術支持服務顯得尤為重要&#xff0c;它直接關系到企業產品在市場中的口碑&#xff0c;進而影響企業的發展命運。 因此&#xff0c;企業勢必需要重視技術支持服務體系的搭建&#xff0c;引…

JavaScript 事件循環竟還能這樣玩!

JavaScript 是一種單線程的編程語言&#xff0c;這意味著它一次只能執行一個任務。為了能夠處理異步操作&#xff0c;JavaScript 使用了一種稱為事件循環&#xff08;Event Loop&#xff09;的機制。 本文將深入探討事件循環的工作原理&#xff0c;并展示如何基于這一原理實現一…

git-commit-id-plugin maven插件筆記(git commitId跟蹤工具)

文章目錄 maven依賴git.properties 例子 代碼版本管理比較混亂&#xff0c;如何記錄呢? 一種是手動記錄&#xff0c;也可以實現&#xff0c;顯得有點笨。 也可以通過插件。 maven依賴 <plugin><groupId>pl.project13.maven</groupId><artifactId>git…

面試題系列:Python是什么?使用Python有什么好處?你對 PEP 8 有什么理解?

###面試題系列:Python是什么?使用Python有什么好處?你對 PEP 8 有什么理解? 1、Python是什么? Python是一門動態的(dynamic)且強類型(strong)語言 延伸: 1)靜態類型語言和動態類型語言的判別的標準 如果類型檢查發生在編譯階段(compile time),那么是靜態類型語言(s…

【數據分享】水體分布與五級水系和流域矢量數據+2000-2022年植被指數(NDVI)數據(全國/分省/分市)

1. 數據介紹 數據分為3個層次結構&#xff0c;分別為省、地級市、縣。其中&#xff0c;省級水體31個&#xff08;不包含香港、臺灣等&#xff09;&#xff0c; 地級市水體366個&#xff0c;縣級市水體2847個。每一個文件夾中都包含該省、地級市或者縣的水體矢量數據、行政邊界…

數學建模 —— 灰色系統(4)

目錄 什么是灰色系統&#xff1f; 一、灰色關聯分析 1.1 灰色關聯分析模型 1.2 灰色關聯因素和關聯算子集 1.2.1 灰色關聯因素 1.2.2 關聯算子集 1.3 灰色關聯公理與灰色關聯度 1.3.1 灰色關聯度 1.3.2 灰色關聯度計算步驟 1.4 廣義關聯度 1.4.1 灰色絕對關聯…

一文讀懂GDPR

GDPR將對人們的網絡足跡、使用的APP和服務如何保護或利用這些數據產生重大影響。 下面我們將對有關GDPR人們最關心的問題進行解讀。 GDPR是什么&#xff1f; 一般數據保護條例&#xff08;General Data Protection Regulation&#xff09;是一項全面的法律&#xff0c;賦予了…

風電Weibull+隨機出力!利用ARMA模型隨機生成風速+風速Weibull分布程序代碼!

前言 隨著能源問題日益突出&#xff0c;風力發電等以可再生能源為基礎的發電技術越來越受到關注。建立能夠正確反映實際風速特性的風速模型是研究風力發電系統控制策略以及并網運行特性的重要基礎叫。由于風速的隨機性和波動性&#xff0c;系統中的機械設備和電氣設備以及電網…

計算機網絡⑩ —— Linux系統如何收發網絡包

轉載于小林coding&#xff1a;https://www.xiaolincoding.com/network/1_base/how_os_deal_network_package.html 1. OSI七層模型 應用層&#xff0c;負責給應用程序提供統一的接口&#xff1b;表示層&#xff0c;負責把數據轉換成兼容另一個系統能識別的格式&#xff1b;會話…

深度剖析云邊對接技術:探索開放API接口的價值與意義

在當今數字化時代的浪潮中&#xff0c;云邊對接與開放API接口成為了塑造行業生態的重要驅動力。隨著云計算、物聯網和邊緣計算等技術的快速發展&#xff0c;傳統產業正在邁向數字化轉型的關鍵時刻。而在這個過程中&#xff0c;云邊對接技術以及開放的應用程序接口(API)扮演著舉…

處理STM32 DMA方式下的HAL_UART_ERROR_ORE錯誤

1. 檢查并調整DMA和UART配置 確保初始化順序&#xff1a;需要確保USART的CR寄存器UE位開關留到最后打開&#xff0c;即完成USART和DMA的所有配置初始化后再使能USART。這樣可以避免初始化順序不當導致的通信問題。配置合適的DMA緩沖區&#xff1a;確保DMA緩沖區足夠大&#xf…

Facebook海外三不限 | 如何降低Facebook頻繁被封的風險

本文將討論Facebook賬戶被封的原因及降低封禁風險的方法&#xff0c;以維護用戶的賬戶安全和社交樂趣。 1. 常見原因&#xff1a;賬戶被封通常與發布違反社區標準的內容有關&#xff0c;如仇恨言論、暴力內容、欺詐虛假信息、非法活動、騷擾、版權侵權等。此外&#xff0c;未授…

el-date-picker選擇開始日期的近半年

<el-date-pickerv-model"form[val.key]":type"val.datePickerType || daterange":clearable"val.clearable && true"range-separator"~"start-placeholder"開始日期"end-placeholder"結束日期"style&q…

玩轉Linux進度條

準備工作&#xff1a; 一.關于緩沖區 首先&#xff0c;咱們先來一段有意思的代碼&#xff1a; #include<stdio.h> #include<unistd.h> int main() {printf("you can see me");sleep(5);} 你可以在你的本地運行一下&#xff0c;這里我告訴大家運行結果…

【SAP HANA 33】前端參數多選情況下HANA如何使用in來匹配?

場面描述: 在操作界面經常會出現某個文本框需要多選的情況,然后后臺需要根據多選的值進行匹配搜索。 一般處理的情況是: 1、在Java后端動態生成SQL 2、不改變動態SQL的情況,直接當做一個正常的參數進行傳遞 本次方案是第二個,直接當做一個正常的字符串參數進行傳遞即…

【面試題-014】Mysql數據庫有哪些索引類型?

文章目錄 B 樹和 B 樹區別B 樹B 樹 mysql聚簇索引和非聚簇索引聚簇索引&#xff08;Clustered Index&#xff09;非聚簇索引&#xff08;Non-Clustered Index&#xff09;總結 MyISAM和InnoDB兩種常見的存儲引擎區別MySQL的主從同步原理如何確保主從同步的數據一致性&#xff1…

使用C++實現高效的套接字連接池

在現代網絡應用中&#xff0c;高效管理網絡連接是實現高并發和低延遲的重要因素。下面將詳細介紹如何使用C實現一個高效的套接字連接池&#xff0c;以便在需要時快速復用連接&#xff0c;從而提高系統性能和資源利用率。 一、什么是連接池&#xff1f; 連接池是一種管理網絡連…

RFID防盜門:守護您的商品資產安全!

在新零售運營管理中&#xff0c;防盜是至關重要的一環。根據美國零售聯合會發布的年度零售安全調查&#xff0c;2022年美國零售商損失了創紀錄的1121億美元。其中年度損失最大因素是由外部盜竊導致庫存損失和員工內部盜竊造成的。 然而傳統零售業商品資產盤點往往依賴人工排查&…

ConcurrentHashMap詳解 什么時候CAS什么時候synchronized

jdk:1.7 segment數組hashEntry數組鏈表實現 jdk版本&#xff1a;1.8&#xff1a;hashEntry數組紅黑樹實現 1、基本參數 //**1、最大容量** hashmap的最大容量也是這個&#xff0c;菜鳥一面被問到了 private static final int MAXIMUM_CAPACITY 1 << 30;//數組默認為…

《科技與健康》是什么級別的期刊?是正規期刊嗎?能評職稱嗎?

問題解答 問&#xff1a;《科技與健康》期刊萬方網可查嗎 答&#xff1a;萬方、維普可查 問&#xff1a;《科技與健康》是正規期刊嗎&#xff1f; 答&#xff1a;萬方維普收錄的正規期刊。主管單位&#xff1a;長江出版傳媒股份有限公司 主辦單位&#xff1a;湖北科學技術…