藍橋杯 數三角

問題描述

小明在二維坐標系中放置了 n 個點,他想從中選出一個包含三個點的子集,使得這三個點能夠組成一個三角形

由于這樣的方案太多了,他決定只選擇那些可以組成等腰三角形的方案。

請幫他計算出一共有多少種選法可以組成等腰三角形。


輸入格式

n + 1 行:

  • 第 1 行:一個正整數 n,表示點的數量。
  • 接下來的 n 行:每行兩個整數 x?y?,表示第 i 個點的坐標。

輸出格式

輸出 1 行,一個整數,表示可以組成等腰三角形的選法數量。


樣例輸入

5
1 1
4 1
1 0
2 1
1 2

樣例輸出

4

樣例說明

一共有 4 種選法可以組成等腰三角形:

  • {3, 4, 5}
  • {1, 3, 4}
  • {5, 2, 3}
  • {1, 4, 5}

評測用例規模與約定

  • 對于 20% 的數據,保證 n ≤ 200
  • 對于 100% 的數據,保證:
    • n ≤ 2000
    • 0 ≤ x?, y? ≤ 10?

c++代碼

#include<bits/stdc++.h>
#include<math.h>using namespace std;typedef long long ll;ll n, ans = 0;
vector<vector<ll>> arr;
unordered_map<ll, vector<ll>> mp;ll delta(ll x1, ll y1, ll x2, ll y2) {return (x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2);
}int main() {scanf("%lld", &n);arr = vector<vector<ll>>(n, vector<ll>(2));for (ll i = 0; i < n; i++) {scanf("%lld %lld", &arr[i][0], &arr[i][1]);}for (ll i = 0; i < n; i++) {mp.clear();for (ll j = 0; j < n; j++) {if (j == i) continue;ll d = delta(arr[i][0], arr[i][1], arr[j][0], arr[j][1]);vector<ll> mid = mp[d];for (ll k = 0; k < mid.size(); k++) {if (4 * d > delta(arr[j][0], arr[j][1], arr[mid[k]][0], arr[mid[k]][1])) ans++;}mp[d].push_back(j);}}printf("%lld", ans);return 0;
}//by wqs

這個題目需要注意三點共線的情況,要把這種情況舍去

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

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

相關文章

【Kafka】從理論到實踐的深度解析

在當今數字化轉型的時代&#xff0c;企業面臨著數據量呈指數級增長、業務系統愈發復雜的挑戰。在這樣的背景下&#xff0c;高效的數據傳輸與處理技術成為了關鍵。Kafka&#xff0c;作為一款分布式消息隊列系統&#xff0c;憑借其卓越的性能和豐富的特性&#xff0c;在眾多企業的…

Linux課程學習一

一.fopen與fclose函數 linux中fopen函數直接用man fopen 去查看 函數原型 FILE * fopen(constchar *path , cost char *mode) /* * description : 打開一個文件 * param ‐ path : 指定文件路徑,如&#xff1a;"./test.txt"&#xff0c;也可以直接由文件名 * param …

【區塊鏈安全 | 第十篇】智能合約概述

部分內容與前文互補。 文章目錄 一個簡單的智能合約子貨幣&#xff08;Subcurrency&#xff09;示例區塊鏈基礎交易區塊預編譯合約 一個簡單的智能合約 我們從一個基礎示例開始&#xff0c;該示例用于設置變量的值&#xff0c;并允許其他合約訪問它。 // SPDX-License-Identi…

XML標簽格式轉換為YOLO TXT格式

針對的是多邊形&#xff08;<polygon>&#xff09;來描述對象的邊界&#xff0c;而不是傳統的矩形框&#xff08;<bndbox>&#xff09; import xml.etree.ElementTree as ET import os from pathlib import Path# 解析VOC格式的XML文件&#xff0c;提取目標框的標…

大唐杯02 DTM.PX4.016

01 5G關鍵技術概述 回傳壓力大&#xff1a;核心網向基站回傳壓力大 02 5G關鍵技術介紹01

CSS3學習教程,從入門到精通, CSS3 盒子模型的詳細語法知識點及案例代碼(23)

CSS3 盒子模型的詳細語法知識點及案例代碼 CSS3 盒子模型完整指南 一、盒子模型基礎 每個 HTML 元素都被視為一個矩形盒子&#xff0c;由以下部分組成&#xff1a; 內容區 (Content)內邊距 (Padding)邊框 (Border)外邊距 (Margin) 二、語法知識點詳解 1. 盒子的寬和高 sel…

《Linux運維實戰:Ubuntu 22.04修改root用戶默認名并禁止登錄》

總結&#xff1a;整理不易&#xff0c;如果對你有幫助&#xff0c;可否點贊關注一下&#xff1f; 更多詳細內容請參考&#xff1a;Linux運維實戰總結 一、背景信息 由于安全方面的考慮&#xff0c;先要求Ubuntu 22.04系統重的root用戶禁止登錄&#xff0c;并修改用戶名root為ad…

docker-compose自定義網絡,解決docker-compose網段路由沖突

問題排查 先route一波查看一下路由表 容器路由19和堡壘機路由沖突 解決方案 更改docker網段更改docker生成容器的網段 > 基本操作 docker network ls &#xff1a;查看docker網絡列表 docker network inspect <network id/name>&#xff1a;查看某個docker網絡詳情…

前端 - ts - - declare聲明類型

在使用typeScript的項目中 需要聲明屬性類型 單獨的局部屬性 可以直接在當前文件中聲明 全局屬性需要在項目根目錄下新建.d.ts文件 vite會自動識別.d.ts類型文件 在該文件中使用declare聲明類型有三種寫法 1、在某種類型的文件中聲明 2、聲明window上的屬性類型 3、全局聲明…

[Mac]利用Hexo+Github Pages搭建個人博客

由于我這臺Mac基本沒啥環境&#xff0c;因此需要從零開始配置&#xff0c;供各位參考。 注意??&#xff1a;MacBook (M4)使用/bin/zsh作為默認Shell&#xff0c;其對應的配置文件為~/.zshrc 參考文檔&#xff1a; HEXO系列教程 | 使用GitHub部署靜態博客HEXO | 小白向教程 文…

運維面試題(十一)

1.如果一個硬盤 IO 時阻塞了&#xff0c;會發生什么情況&#xff1f; 進程/線程掛起&#xff1a;發起I/O操作的進程或線程會被操作系統置為阻塞狀態&#xff08;等待狀態&#xff09;&#xff0c;直到I/O完成。CPU資源釋放&#xff1a;阻塞的線程會讓出CPU&#xff0c;操作系統…

sql2022 復制 事務級別發布后無法刪除

Cannot execute as the database principal because the principal "dbo" does not exist, this type of principal cannot be impersonated, or you do not have permission. 用SA用戶登錄執行下列語句 USE [xxxxx] GO EXEC dbo.sp_changedbowner loginame Nsa, …

合規+增效 正也科技攜智能營銷產品出席中睿論壇

正也科技作為醫藥數字化領域的標桿企業&#xff0c;受邀參展第二屆中睿醫健產業企業家年會暨第十三屆中睿醫藥新春論壇&#xff0c;本次論壇以“合力啟新程”為主題&#xff0c;吸引了800多位醫藥健康企業的董事長、總經理參與&#xff0c;并通過主論壇、分論壇、路演等形式探討…

ubuntu 安裝 postgresql

在 Ubuntu 系統中安裝 PostgreSQL 的步驟如下&#xff1a; 步驟 1&#xff1a;更新軟件包列表 sudo apt update步驟 2&#xff1a;安裝 PostgreSQL Ubuntu 默認倉庫包含 PostgreSQL&#xff0c;直接安裝&#xff1a; sudo apt install postgresql postgresql-contrib -ypost…

智能巡檢機器人:2025年企業安全運維的“數字哨兵“

文章目錄 一、2025年&#xff0c;為什么企業需要智能巡檢機器人&#xff1f;二、2025年智能巡檢機器人的六大核心價值三、2025行業落地實景1. 電網系統——"巡線鷹"集群作戰2. 化工園區——"防爆衛士"全天候守護3. 數據中心——"冷血偵探"精準運…

K8S學習之基礎五十一:k8s部署jenkins

k8s部署jenkins 創建nfs共享目錄&#xff0c; mkdir -p /data/v2 echo /data/v2 *(rw,no_root_squash) > /etc/exports exportfs -arv創建pv、pvc vi pv.yaml apiVersion: v1 kind: PersistentVolume metadata:name: jenkins-k8s-pv spec:capacity:storage: 1GiaccessMod…

Vue實現的表格多選方案支持跨頁選擇和回顯功能

以下是純Vue實現的表格多選方案&#xff08;不依賴UI庫&#xff09;&#xff0c;支持跨頁選擇和回顯功能&#xff1a; <template><div class"custom-table"><!-- 表格主體 --><table><thead><tr><th><input type"…

Oracle 19C 備份

在 Oracle 19c 中&#xff0c;備份數據庫通常使用 RMAN&#xff08;Recovery Manager&#xff09; 工具&#xff0c;它是 Oracle 提供的官方備份和恢復工具。以下是通過 RMAN 備份 Oracle 19c 數據庫的詳細步驟和命令。 一、RMAN 基本概念 RMAN 是 Oracle 的備份和恢復工具&am…

Elasticsearch:人工智能時代的公共部門數據治理

作者&#xff1a;來自 Elastic Darren Meiss 人工智能&#xff08;AI&#xff09;和生成式人工智能&#xff08;GenAI&#xff09;正在迅速改變公共部門&#xff0c;從理論探討走向實際應用。正確的數據準備、管理和治理將在 GenAI 的成功實施中發揮關鍵作用。 我們最近舉辦了…

AT24Cxx移植第三方庫到裸機中使用

簡介 MCU : STM32F103C8T6 庫: HAL庫裸機開發 EEPROM : AT24C02, 256Byte容量&#xff0c;I2C接口 電路圖 AT24C02 電路圖 電路圖引用 裸機直接讀寫 // 寫入數據到 EEPROM HAL_StatusTypeDef EEPROM_WriteByte(uint16_t MemAddress, uint8_t Data) {// 發送數據uint8_t …