week4-[二維數組]平面上的點

week4-[二維數組]平面上的點

題目描述

NNN 個二維平面上的點,每個點的坐標都是整數且坐標范圍都在 0~9990\sim 9990999 之間,求其中出現最頻繁的點的出現次數及其坐標。

輸入格式

第一行有一個整數 NNN,表示平面上點的個數。

接下來 NNN 行,每行有兩個整數,表示一個平面上的點的 x,yx,yx,y 二維坐標。

輸出格式

輸出的第一行為一個整數,表示平面中的點出現的最多次數。

接下來輸出每行兩個整數,表示出現最頻繁的點的二維坐標。

  • 如果有多個點均為最頻繁出現的點,則輸出包括多行。輸出的順序為:先按照 xxx 坐標從小到大輸出,再按照 yyy 坐標從小到大輸出。

樣例 #1

樣例輸入 #1

5
1 2
3 2
2 8
1 2
6 10

樣例輸出 #1

2
1 2

樣例 #2

樣例輸入 #2

7
1 5
0 3
8 2
4 2
1 5
6 7
0 3

樣例輸出 #2

2
0 3
1 5

樣例 #3

樣例輸入 #3

10
5 3
5 3
5 2
2 6
5 3
2 6
5 2
2 6
1 8
5 2

樣例輸出 #3

3
2 6
5 2
5 3

提示

數據范圍

對于所有數據,1≤n≤500001 \le n \le 500001n50000

這題考察的是 二維點的統計與排序,重點在于:

  1. 統計每個點出現次數
  2. 找到最大出現次數
  3. 輸出所有達到最大次數的點,按坐標排序

🔎 解題思路

  1. 存儲與統計
    • 點的坐標范圍在 [0,999],但 n 可達 50000,直接開 1000×1000 數組也行(內存約 1MB),也可以用 map<pair<int,int>, int> 來統計次數。
    • 推薦用 mapunordered_map,因為題目數據范圍比較大,但點可能很稀疏。
  2. 尋找最大值
    • 遍歷統計結果,找到出現次數的最大值 maxCnt
  3. 收集答案并排序
    • 遍歷統計表,找出所有次數等于 maxCnt 的點,放到數組里。
    • 對結果按照 (x,y) 排序:先比 x,若相等再比 y

📝 C++ 實現

#include <iostream>
#include <map>
#include <vector>
#include <algorithm>
using namespace std;int main() {int n;cin >> n;map<pair<int,int>, int> freq;for (int i = 0; i < n; i++) {int x, y;cin >> x >> y;freq[{x, y}]++;}int maxCnt = 0;for (auto &p : freq) {if (p.second > maxCnt) maxCnt = p.second;}vector<pair<int,int>> ans;for (auto &p : freq) {if (p.second == maxCnt) ans.push_back(p.first);}sort(ans.begin(), ans.end()); // pair 默認先按 first 再按 second 排序cout << maxCnt << "\n";for (auto &pt : ans) {cout << pt.first << " " << pt.second << "\n";}return 0;
}

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

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

相關文章

領域專用AI模型訓練指南:醫療、法律、金融三大垂直領域微調效果對比

領域專用AI模型訓練指南&#xff1a;醫療、法律、金融三大垂直領域微調效果對比 &#x1f31f; Hello&#xff0c;我是摘星&#xff01; &#x1f308; 在彩虹般絢爛的技術棧中&#xff0c;我是那個永不停歇的色彩收集者。 &#x1f98b; 每一個優化都是我培育的花朵&#xff0…

在自動駕駛中ESKF實現GINS時,是否將重力g作為變量考慮進去的目的是什么?

在自動駕駛的ESKF中&#xff0c;是否將重力 g 作為估計變量&#xff0c;可以從多個維度來比較這兩種方法的差異。對比維度不將重力 g 作為變量將重力 g 作為變量核心假設重力矢量 g 是已知且恒定的完美參考量。重力矢量 g 是需要被估計或校準的量&#xff0c;其值可能存在不確定…

Dify 從入門到精通(第 55/100 篇):Dify 的模型微調(進階篇)

Dify 從入門到精通&#xff08;第 55/100 篇&#xff09;&#xff1a;Dify 的模型微調 Dify 入門到精通系列文章目錄 第一篇《Dify 究竟是什么&#xff1f;真能開啟低代碼 AI 應用開發的未來&#xff1f;》介紹了 Dify 的定位與優勢第二篇《Dify 的核心組件&#xff1a;從節點…

《Password Guessing Using Large Language Models》——論文閱讀

1.研究背景LLM在文本生成和理解方面表現出色&#xff0c;但直接用于密碼猜測存在以下問題&#xff1a;密碼與自然語言的差異&#xff08;短、無語法、需精確匹配&#xff09;生成效率低、重復率高倫理限制&#xff08;如GPT-4拒絕生成大量密碼&#xff09;2.本文研究提出PASSLL…

C# 使用OPCUA 與CODESYS進行標簽通訊

目錄 1.導出的標簽 識別標簽名稱 2.引用OPCUA的包 3.讀寫方法的封裝 4.完整的業務模塊封裝 1.導出的標簽 識別標簽名稱 從CODESYS導出使用標簽通訊的模塊文檔 大概是這樣子的 <?xml version"1.0" encoding"utf-8"?> <Symbolconfiguratio…

C++ 中 `std::map` 的 `insert` 函數

1. 函數的概念與用途 std::map::insert 是 C 標準模板庫&#xff08;STL&#xff09;中 map 容器的一個核心成員函數。它的核心任務很明確&#xff1a;向 map 中插入一個新的鍵值對&#xff08;key-value pair&#xff09;。 核心用途&#xff1a; 數據構建&#xff1a;初始化一…

【機器學習學習筆記】機器學習引言

前言本文章是撥珠自己的學習筆記&#xff0c;自用為主&#xff0c;學習請移步專門教程&#xff0c;若有錯誤請大佬輕噴&#xff0c;也歡迎同好交流學習。本文將闡述三個問題。什么是機器學習&#xff1f;監督學習、無監督學習到底在干什么&#xff1f;分類、回歸、聚類又是怎么…

程序設計---狀態機

在軟件工程、嵌入式開發、自動化控制等領域&#xff0c;狀態機&#xff08;State Machine&#xff09;是一種描述系統行為的強大工具。它通過抽象“狀態”“事件”“轉換”和“動作”四大核心要素&#xff0c;將復雜的邏輯流程轉化為可視化、可驗證的狀態流轉規則&#xff0c;廣…

GaussDB 數據庫架構師修煉(十八) SQL引擎-分布式計劃

1 分布式架構GaussDB基于MPP &#xff08;Massively Parallel Processing&#xff09; 并行架構Streaming流式計算框架2 分布式計劃CN輕量化&#xff08;light proxy&#xff09; FQS&#xff08; fast query shipping &#xff09; STREAM計劃 XC計劃計劃類型場景原理CN…

微前端架構核心要點對比

1. 樣式隔離 常見的隔離方式有以下幾種,還是根據自身業務來確定: 1.1. shadowDOM 目前相對來說使用最多的樣式隔離機制。 但shadowDOM并不是銀彈,由于子應用的樣式作用域僅在 shadow 元素下,那么一旦子應用中出現運行時“翻墻”跑到外面構建 DOM 的場景,必定會導致構建…

VMware 17.6安裝包下載與保姆級圖文安裝教程!

軟件下載 [軟件名稱]&#xff1a;VMware 17.6 [軟件大小]&#xff1a;226.66MB [系統環境]&#xff1a;win 7/8/10/11或更高&#xff0c;64位操作系統 VMware合集&#xff0c;軟件下載&#xff08;夸克網盤需手機打開&#xff09;&#xff1a;&#xff1a;VMware合集丨夸克網…

關于微服務下的不同服務之間配置不能通用的問題

問題引入現有兩個服務&#xff0c;一個是 A 服務&#xff0c;一個是 B 服務&#xff0c;并且這兩個服務都需要使用 mysql。現 B 服務中引入了 A 服務的依賴&#xff0c;在 A 服務中添加了 mysql 的相關配置&#xff0c;那么這時就有一個問題&#xff1a;既然 B 已經引入了 A 的…

【機器學習項目 心臟病預測】

文章目錄心臟病預測導入數據集數據集介紹理解數據數據處理機器學習K近鄰分類器邏輯回歸支持向量分類器&#xff08;SVC&#xff09;決策樹分類器隨機森林分類器結論心臟病預測 在這個機器學習項目中&#xff0c;我們使用UCI心臟病數據集 UCI &#xff0c;并將使用機器學習方法…

【論文閱讀 | arXiv 2025 | WaveMamba:面向RGB-紅外目標檢測的小波驅動Mamba融合方法】

論文閱讀 | arXiv 2025 | WaveMamba&#xff1a;面向RGB-紅外目標檢測的小波驅動Mamba融合方法??1&&2. 摘要&&引言3. 方法3.1. 預備知識3.2. WaveMamba3.3. WaveMamba融合塊&#xff08;WMFB&#xff09;3.3.1. 低頻Mamba融合塊&#xff08;LMFB&#xff09;…

DevExpress發布PowerPoint Presentation API庫,支持跨平臺與 PDF 導出

DevExpress專注于為 .NET、JavaScript、VCL 等多種平臺提供高性能 UI 控件、報表工具、數據可視化組件及開發框架&#xff0c;產品覆蓋桌面、Web、移動及跨平臺應用開發領域。憑借穩定的性能、豐富的功能與優質的技術支持&#xff0c;DevExpress 的解決方案已廣泛應用于金融、制…

Vue3使用 DAG 圖(AntV X6)

參考文檔 AntV X6 文檔 可自定義設置以下屬性 容器寬度&#xff08;width&#xff09;&#xff0c;類型&#xff1a;number | string&#xff0c;默認 ‘100%’容器高度&#xff08;height&#xff09;&#xff0c;類型&#xff1a;number | string&#xff0c;默認 ‘100%’…

【數據結構】跳表的概率模型詳解與其 C 代碼實現

文章目錄介紹關鍵組成部分讀者可以比對這張圖片去理解跳表 ![在這里插入圖片描述](https://i-blog.csdnimg.cn/direct/c5704b6276a14c3f9facdc3e55015bcc.jpeg#pic_center) 核心操作原理算法的概率模型跳表的 C代碼實現初始化跳躍表的節點、跳躍表本身跳表插入節點查找元素更新…

Verilog實現除法器

文章目錄基本原理確定除數最高位移位相減基本原理 若想得到yx\frac{y}{x}xy?的商和余數&#xff0c;一種最直觀的想法就是不斷地用yyy減掉xxx&#xff0c;直到y<xy< xy<x為止&#xff0c;寫成偽代碼如下 z 0 while y<x:y - xz 1這種算實在是太低效了&#xff…

EasyLive的一些疑問

目錄 一、pinia是什么 二、html的代碼片段又失效&#xff1f; 三、Request.js 四 、狀態管理庫 五、main.js:19 Uncaught SyntaxError: The requested module /src/utils/Api.js?t1745328489985 does not provide an export named default (at main.js:19:8)?編輯 六、…

C++(String):

目錄 string與C中字符串的區別&#xff1a; C字符串&#xff1a; string字符串&#xff1a; string的定義和初始化&#xff1a; 輸入字符串&#xff1a; 方式1&#xff1a; 方式2&#xff1a; 字符串的拼接的操作&#xff1a; 方式1&#xff1a;使用“” 方式2&#…