当前位置: 首页 > article >正文

查询直线的条数

#include iostream#include vector#include set#include numeric // For std::gcdusing namespace std;// 定义点结构struct Point {int x, y;};// 定义直线结构通过最简斜率和直线上的一点来唯一标识// 实际上更好的办法是存储最简方向向量 (dx, dy) 和 经过该方向的最简截距struct Line {int dx, dy, x0, y0;// 重载 运算符以便放入 set 中去重bool operator(const Line other) const {if (dx ! other.dx) return dx other.dx;if (dy ! other.dy) return dy other.dy;if (x0 ! other.x0) return x0 other.x0;return y0 other.y0;}};// 计算最大公约数手动实现或使用 C17 的 std::gcdint gcd(int a, int b) {return b 0 ? a : gcd(b, a % b);}int main() {vectorPoint p;// 1. 生成所有整点for (int i 0; i 20; i) {for (int j 0; j 21; j) {p.push_back({i, j});}}setLine lines;int n p.size();// 2. 遍历所有点对for (int i 0; i n; i) {for (int j i 1; j n; j) {int dx p[i].x - p[j].x;int dy p[i].y - p[j].y;if (dx 0) { // 垂直线lines.insert({0, 1, p[i].x, 0});continue;}if (dy 0) { // 水平线lines.insert({1, 0, 0, p[i].y});continue;}// 通用情况化简斜率int g gcd(abs(dx), abs(dy));dx / g;dy / g;// 规范化方向确保 dx 0if (dx 0) {dx -dx;dy -dy;}/* 唯一标识逻辑直线方程dy * (x - x1) dx * (y - y1)化简为dy * x - dx * y dy * x1 - dx * y1右边项对于同一直线上的所有点是一个常数 C*/int C dy * p[i].x - dx * p[i].y;lines.insert({dx, dy, 0, C});}}// 3. 输出结果cout lines.size() endl;return 0;}

相关文章:

查询直线的条数

#include <iostream> #include <vector> #include <set> #include <numeric> // For std::gcdusing namespace std;// 定义点结构 struct Point {int x, y; };// 定义直线结构&#xff0c;通过最简斜率和直线上的一点来唯一标识 // 实际上更好的办法是…...

运算放大器电流流向的5个常见误区:硬件工程师都踩过哪些坑?

运算放大器电流流向的5个常见误区&#xff1a;硬件工程师都踩过哪些坑&#xff1f; 在硬件设计领域&#xff0c;运算放大器就像一位沉默的舞者——看似动作简单&#xff0c;实则每个细节都暗藏玄机。记得我第一次调试仪表放大电路时&#xff0c;盯着示波器上诡异的电流波形百思…...

在线数据处理工具

推荐一个好用的在线数据处理工具&#xff0c;程序员必备 作为程序员&#xff0c;经常需要处理各种文本数据。今天推荐10个超好用的在线工具&#xff0c;每个都能帮你节省大量时间。 1. 文本去重工具 地址&#xff1a;https://www.aiyun1.cloud/dedup 功能&#xff1a;一键去除…...

PyTorch 2.8镜像基础教程:NumPy/Pandas数据预处理与torch.Tensor转换要点

PyTorch 2.8镜像基础教程&#xff1a;NumPy/Pandas数据预处理与torch.Tensor转换要点 1. 环境准备与快速验证 在开始数据预处理之前&#xff0c;我们需要先确认PyTorch环境已经正确配置并能够使用GPU加速。这个预装PyTorch 2.8的镜像已经为我们准备好了所有必要的组件。 1.1…...

Hunyuan-MT-7B功能体验:少数民族语言翻译效果实测与对比

Hunyuan-MT-7B功能体验&#xff1a;少数民族语言翻译效果实测与对比 1. 引言&#xff1a;少数民族语言翻译的技术挑战 在全球化与数字化浪潮中&#xff0c;语言障碍始终是跨文化交流的重要壁垒。对于主流语言如英语、汉语等&#xff0c;机器翻译技术已相对成熟。然而&#xf…...

小白也能懂!Meta-Llama-3-8B-Instruct快速上手全攻略

小白也能懂&#xff01;Meta-Llama-3-8B-Instruct快速上手全攻略 1. 为什么选择Meta-Llama-3-8B-Instruct Meta-Llama-3-8B-Instruct是Meta公司2024年4月开源的中等规模语言模型&#xff0c;特别适合想要体验高质量AI对话但硬件配置有限的开发者。这个80亿参数的模型在单张RT…...

RavenDB全文搜索与NGram分析器的实际应用

引言 在现代的数据库系统中,全文搜索功能已成为一个不可或缺的部分。RavenDB,作为一个强大的NoSQL数据库,提供了丰富的文本搜索功能。特别是通过使用NGram分析器,可以大大提升搜索的灵活性和准确性。本文将深入探讨RavenDB的全文搜索机制,特别是NGram分析器在索引和查询时…...

lychee-rerank-mm行业方案:文旅部门景区图片库按游客搜索词智能排序

Lychee-rerank-mm行业方案&#xff1a;文旅部门景区图片库按游客搜索词智能排序 1. 项目背景与价值 文旅部门的景区图片库通常包含成千上万张照片&#xff0c;从自然风光到人文景观&#xff0c;从特色建筑到文化活动。当游客通过搜索词查找图片时&#xff0c;如何快速找到最相…...

Node.js 结合 LangChainJS 实现智能对话系统的实战探索

1. 为什么选择Node.js和LangChainJS构建智能对话系统 最近几年&#xff0c;智能对话系统已经成为开发者工具箱里的标配。作为一个在AI领域摸爬滚打多年的老手&#xff0c;我发现Node.js和LangChainJS的组合特别适合快速搭建这类系统。Node.js的异步非阻塞特性让它天生适合处理对…...

Jimeng LoRA动态热切换实战:避免显存爆炸,轻松测试多训练阶段模型

Jimeng LoRA动态热切换实战&#xff1a;避免显存爆炸&#xff0c;轻松测试多训练阶段模型 1. 项目背景与核心价值 你是否遇到过这样的困扰&#xff1a;在测试不同训练阶段的LoRA模型时&#xff0c;每次切换版本都需要重新加载底座模型&#xff0c;不仅耗时耗力&#xff0c;还…...

JS手撕:DOM操作 浏览器API高频场景详解

在前端开发中&#xff0c;我们经常会遇到一些重复且基础的需求——比如解析URL参数、给大量元素绑定点击事件、实现图片懒加载等。这些功能看似简单&#xff0c;但写得不够严谨就容易出现bug&#xff08;比如中文参数乱码、事件绑定冗余、滚动加载卡顿&#xff09;。 今天就整理…...

Pixel Dimension Fissioner 社交媒体内容生成:自动化生产像素风格营销图片

Pixel Dimension Fissioner 社交媒体内容生成&#xff1a;自动化生产像素风格营销图片 1. 社交媒体运营的视觉内容困境 每天打开社交媒体后台&#xff0c;运营团队最头疼的问题总是惊人的一致&#xff1a;内容不够发。特别是需要大量视觉素材的节日营销期&#xff0c;设计师加…...

Ollama部署Phi-3-mini完整指南:从安装到实战应用场景解析

Ollama部署Phi-3-mini完整指南&#xff1a;从安装到实战应用场景解析 1. 为什么选择Phi-3-mini-4k-instruct&#xff1f; Phi-3-mini-4k-instruct是微软推出的轻量级AI模型&#xff0c;虽然只有38亿参数&#xff0c;但在多个基准测试中表现优异。这个模型特别适合需要快速部署…...

3个颠覆性技巧:NVIDIA Profile Inspector如何释放显卡隐藏性能

3个颠覆性技巧&#xff1a;NVIDIA Profile Inspector如何释放显卡隐藏性能 【免费下载链接】nvidiaProfileInspector 项目地址: https://gitcode.com/gh_mirrors/nv/nvidiaProfileInspector NVIDIA Profile Inspector是一款专业的显卡参数配置工具&#xff0c;能够深度…...

3分钟掌握OpenSpeedy:完全免费的开源游戏变速工具终极指南

3分钟掌握OpenSpeedy&#xff1a;完全免费的开源游戏变速工具终极指南 【免费下载链接】OpenSpeedy &#x1f3ae; An open-source game speed modifier. 项目地址: https://gitcode.com/gh_mirrors/op/OpenSpeedy OpenSpeedy是一款专为Windows平台设计的开源游戏变速工…...

Windows下OpenClaw安装指南:快速对接Phi-3-vision-128k-instruct图文模型

Windows下OpenClaw安装指南&#xff1a;快速对接Phi-3-vision-128k-instruct图文模型 1. 环境准备与安装 在Windows系统上部署OpenClaw需要先确保基础环境就绪。我使用的是Windows 11专业版22H2版本&#xff0c;整个过程大约需要15分钟。建议提前准备管理员权限的PowerShell窗…...

Nunchaku-flux-1-dev多场景落地:图文创作、副业接单、PPT配图、表情包生成一文覆盖

Nunchaku-flux-1-dev多场景落地&#xff1a;图文创作、副业接单、PPT配图、表情包生成一文覆盖 1. 引言&#xff1a;你的本地AI画师&#xff0c;不止于想象 想象一下&#xff0c;你正在为一个公众号文章找配图&#xff0c;翻遍了图库网站&#xff0c;要么风格不搭&#xff0c…...

Nano-Banana模型安全防护:对抗样本检测与防御

Nano-Banana模型安全防护&#xff1a;对抗样本检测与防御 在AI模型日益普及的今天&#xff0c;安全性已成为不可忽视的核心议题。Nano-Banana模型通过引入先进的对抗样本检测与防御机制&#xff0c;在鲁棒性上实现了显著突破&#xff0c;有效提升了模型在复杂环境下的可靠性。…...

影墨·今颜保姆级教程:24GB显卡上跑FLUX.1-dev高清人像生成

影墨今颜保姆级教程&#xff1a;24GB显卡上跑FLUX.1-dev高清人像生成 1. 教程前言&#xff1a;从零开始掌握高端AI人像生成 你是否曾经被AI生成的人像那种"塑料感"所困扰&#xff1f;想要创作出具有电影质感、极致真实的时尚人像&#xff0c;却苦于没有合适的技术方…...

C++ constexpr 编译期逻辑实践

C constexpr 编译期逻辑实践&#xff1a;探索现代C的静态计算潜能 在现代C中&#xff0c;constexpr关键字彻底改变了编译期计算的可能性。它允许开发者在编译阶段执行复杂逻辑&#xff0c;从而提升运行时效率并实现更严格的类型安全。从C11的初版到C20的增强&#xff0c;const…...

Qwen3.5-4B模型在VS Code中的集成:打造个人AI编程工作站

Qwen3.5-4B模型在VS Code中的集成&#xff1a;打造个人AI编程工作站 1. 前言&#xff1a;为什么要在VS Code中集成Qwen3.5-4B 作为一名开发者&#xff0c;你可能已经习惯了在各种在线平台上使用AI辅助编程。但有没有想过&#xff0c;把这些能力直接搬到你的本地开发环境中&am…...

Wan2.2-T2V-A5B在自媒体场景实战:批量生成诗意文案短视频

Wan2.2-T2V-A5B在自媒体场景实战&#xff1a;批量生成诗意文案短视频 1. 为什么自媒体需要轻量级视频生成工具 在内容创作领域&#xff0c;短视频已经成为最主流的内容形式之一。特别是结合诗意文案的短视频&#xff0c;在各大平台都拥有极高的用户粘性和传播度。然而&#x…...

零基础玩转YOLO11目标跟踪:完整环境一键部署教程

零基础玩转YOLO11目标跟踪&#xff1a;完整环境一键部署教程 1. 环境准备与快速部署 1.1 系统要求 操作系统&#xff1a;Linux (推荐Ubuntu 20.04/22.04)硬件配置&#xff1a; GPU&#xff1a;NVIDIA显卡 (建议RTX 3060及以上)显存&#xff1a;至少8GB内存&#xff1a;16GB及…...

零信任实践:OpenClaw+SecGPT-14B构建个人安全决策引擎

零信任实践&#xff1a;OpenClawSecGPT-14B构建个人安全决策引擎 1. 为什么需要个人安全决策引擎 去年某个深夜&#xff0c;我的服务器突然收到大量异常登录尝试。虽然最终没有造成损失&#xff0c;但这件事让我意识到&#xff1a;传统的静态密码和固定权限规则&#xff0c;在…...

交换机接口全解析:从RJ-45到光纤,一文掌握所有连接技巧

1. 交换机接口基础&#xff1a;认识常见的物理接口类型 第一次拆开交换机包装时&#xff0c;面对密密麻麻的接口面板&#xff0c;新手常会感到无从下手。其实这些接口按照传输介质可分为两大阵营&#xff1a;电口和光口。电口就是我们熟悉的RJ-45接口&#xff0c;而光口则包含…...

基于条件风险价值CVaR的微网/虚拟电厂多场景随机规划 摘要:构建了含风、光、燃、储的微网/虚...

基于条件风险价值CVaR的微网/虚拟电厂多场景随机规划 摘要&#xff1a;构建了含风、光、燃、储的微网/虚拟电厂优化调度模型&#xff0c;在此基础上&#xff0c;考虑多个风光出力场景&#xff0c;构建了微网随机优化调度模型&#xff0c;并在此基础上&#xff0c;基于条件风险价…...

intv_ai_mk11开发者友好:提供RESTful API文档、Curl示例、SDK接入指引

intv_ai_mk11开发者友好&#xff1a;提供RESTful API文档、Curl示例、SDK接入指引 1. 平台概述 intv_ai_mk11是基于Llama架构的中等规模文本生成模型&#xff0c;专为开发者设计&#xff0c;提供完整的API接入方案。该模型擅长处理通用问答、文本改写、解释说明和简短创作等任…...

实测雪女-斗罗大陆-造相Z-Turbo:简单几步,让文字描述变成精美动漫图

实测雪女-斗罗大陆-造相Z-Turbo&#xff1a;简单几步&#xff0c;让文字描述变成精美动漫图 1. 模型介绍与准备工作 1.1 什么是雪女-斗罗大陆-造相Z-Turbo 雪女-斗罗大陆-造相Z-Turbo是一款基于Xinference部署的文生图模型服务&#xff0c;专门用于生成斗罗大陆中雪女角色的…...

DeepSeek-OCR-2算力优化部署:支持多GPU并行解析提升吞吐量方案

DeepSeek-OCR-2算力优化部署&#xff1a;支持多GPU并行解析提升吞吐量方案 1. 为什么需要多GPU并行解析&#xff1f; 如果你用过单张显卡跑DeepSeek-OCR-2&#xff0c;可能会遇到这样的场景&#xff1a;公司财务部门一次性发来50张发票扫描件&#xff0c;行政部需要处理100页…...

高效下载B站视频全攻略:Downkyi让你轻松管理视频资源

高效下载B站视频全攻略&#xff1a;Downkyi让你轻松管理视频资源 【免费下载链接】downkyi 哔哩下载姬downkyi&#xff0c;哔哩哔哩网站视频下载工具&#xff0c;支持批量下载&#xff0c;支持8K、HDR、杜比视界&#xff0c;提供工具箱&#xff08;音视频提取、去水印等&#x…...