codeforces 651C Watchmen

Unity中5分钟实现3D高斯泼溅渲染:从原理到实战部署 3D高斯泼溅(3D Gaussian Splatting)是一种新兴的神经渲染技术,它通过显式地使用大量3D高斯椭球来表示场景,革新了传统的体渲染和神经辐射场(NeRF)方法。其核心原理是将这些3D高斯投影到2D屏幕并进行快速光栅化与Alpha混合,从而绕过了耗时的光线步进,实现了极高的渲染效率。这项技术的价值在于,它能够在消费级GPU上达到实时甚至超实时的帧率,同时保持紧凑的数据表达和惊人的视觉细节,极大地降低了高质量3D重建与渲染的门槛。在应用场景上,它正快速渗透到数字孪生、虚拟现实、文化遗产数字化以及 阅读详情
C. Watchmen
time limit per test
3 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

Watchmen are in a danger and Doctor Manhattan together with his friend Daniel Dreiberg should warn them as soon as possible. There are n watchmen on a plane, the i-th watchman is located at point (xi, yi).

They need to arrange a plan, but there are some difficulties on their way. As you know, Doctor Manhattan considers the distance between watchmen i and j to be |xi - xj| + |yi - yj|. Daniel, as an ordinary person, calculates the distance using the formula .

The success of the operation relies on the number of pairs (i, j) (1 ≤ i < j ≤ n), such that the distance between watchman i and watchmen j calculated by Doctor Manhattan is equal to the distance between them calculated by Daniel. You were asked to compute the number of such pairs.

Input

The first line of the input contains the single integer n (1 ≤ n ≤ 200 000) — the number of watchmen.

Each of the following n lines contains two integers xi and yi (|xi|, |yi| ≤ 109).

Some positions may coincide.

Output

Print the number of pairs of watchmen such that the distance between them calculated by Doctor Manhattan is equal to the distance calculated by Daniel.

Examples
input
3
1 1
7 5
1 5
output
2
input
6
0 0
0 1
0 2
-1 1
0 1
1 1
output
11
Note

In the first sample, the distance between watchman 1 and watchman 2 is equal to |1 - 7| + |1 - 5| = 10 for Doctor Manhattan and  for Daniel. For pairs (1, 1), (1, 5) and (7, 5), (1, 5) Doctor Manhattan and Daniel will calculate the same distances.



用三个map,mx记录一种x的数量,my记录一种y的数量,mp用来记录一种点对的数量

对于相同x的即mx[x] == c1,则它在x相同的的这些点对里的组合情况是(c1 - 1) + (c1 - 2) + (c1 - 3) + ... + 1 = c1 * (c1 - 1) / 2种

对于相同y的即my[y] == c2,则它在y相同的这些点对里的组合情况是(c2 - 1) + (c2 - 2) + (c2 - 3) + ... + 1 = c2 * (c2 - 1) / 2种

但是这么算可能会有重复的即对于例如(a,b),(a,b),(a,b)这三个点,横纵坐标都一样,也就是说对于相同的x它们内部会算一遍,对于相同的y它们内部之间也会算一遍,这时候就需要mp[pair(a,b)] == c3了,用于这三个(a, b)内部去重,要减去(c3 - 1) + (c3 - 2) + ... + 1 = c3 * (c3 - 1)



#include <cstdio>
#include <cstring>
#include <iostream>
#include <map>

using namespace std;

typedef long long ll;
typedef pair<int, int> p;

map<int, int> mx, my;
map<p, int> mp;

int main()
{
	int n, x, y;
	scanf("%d", &n);
	mx.clear();
	my.clear();
	mp.clear();
	for (int k = 1; k <= n; k++) {
		scanf("%d%d", &x, &y);
		mx[x]++; my[y]++;
		mp[p(x, y)]++;
	}
	ll ans = 0;
	map<int, int>::iterator i;
	int tem;
	for (i = mx.begin(); i != mx.end(); i++) {
		tem = i->second;
		ans += (ll)tem * (tem - 1) / 2;
	}
	for (i = my.begin(); i != my.end(); i++) {
		tem = i->second;
		ans += (ll)tem * (tem - 1) / 2;
	}
	for (map<p, int>::iterator j = mp.begin(); j != mp.end(); j++) {
		tem = j->second;
		ans -= (ll)tem * (tem - 1) / 2;
	}
	printf("%I64d\n", ans);
	return 0;
}



三菱PLC FX3U温度控制系统案例 U0\G100是平均次数的设置,设置为100个数据取平均,这样数据显示更加稳定,通道1的数据显示再U0\G10里面,温度模块的数据对应是0~150°输出0~10V,对应到0~10000的数据10000是150°的66.667倍,因此把数据传送到D0后转换成浮点数,再去除以66.667,就得到实际的温度了,数据存放到D2。触摸屏软件使用EBpro软件,设计界面如下,右边的是温度的实时曲线图,左边的是温度报警表,当当前温度超过了报警温度这种时,就会在这个表格上显示对应对应的报警。(1)实时显示温度值; 阅读详情

相关推荐

agv调度系统3.0技术介绍

agv调度系统,穿梭车调度系统,调度系统技术介绍,教你做调度

持续分享调度系统开发过程 4868

CodeForces 651C Watchmen

F - Watchmen Time Limit:3000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Submit Status Practice CodeForces 651C Description Watchmen are in a danger and Doctor Manhat

Yesterday You Said Tomorrow. 1669

基于Isaac Gym与PPO算法的机械臂抓取任务仿真与强化学习实战(附完整代码与训练策略)

本文详细介绍了基于Isaac Gym与PPO算法的机械臂抓取任务仿真与强化学习实战。通过环境搭建、PPO算法实现、奖励函数设计等核心环节的优化,结合完整代码与训练策略,显著提升机械臂抓取效率与成功率。特别适合开发者快速掌握强化学习在机器人控制领域的应用。

weixin_29256771的博客 599

codeforces 651C. Watchmen(排列,去重)

题目链接:http://codeforces.com/contest/651/problem/C C. Watchmen time limit per test 3 seconds memory limit per test 256 megabytes input standard input output st

hkh746392783的专栏 1400

国密套件ECC-SM2-SM4-CBC-SM3和ECDHE-SM2-WITH-SM4-SM3

双方交换各自的公钥,最后A计算点(x1,y1) = d1Q2,B计算点(x2,y2) = d2Q1,由于椭圆曲线上是可以满足乘法交换和结合律,所以 d1Q2 = d1d2G = d2d1G = d2Q1 ,因此双方的 x 坐标是一样的,所以它是共享密钥,也就是会话密钥。4、客户端和服务端分别使用工作密钥,计算主密钥,客户端随机数,服务端随机数,字符串常量"key expansion",经PRF计算生成工作密钥。工作密钥包括加密密钥和校验密钥,具体密钥长度由选择的密码算法决定。客户端支持的压缩算法列表。

Java学习笔记 3782

RFSOC实战解析(一):深入RF Data Converter的时钟与数据接口设计

本文深入解析RFSOC中RF Data Converter的时钟与数据接口设计,涵盖GHz采样、数据流处理、时钟树同步及AXI-Stream接口实战。通过详细案例和调试技巧,帮助工程师高效配置IP核,优化ADC/DAC性能,解决跨时钟域和信号完整性等关键问题。

weixin_30955617的博客 473

Codeforces 651C - Watchmen

C. Watchmen time limit per test 3 seconds memory limit per test 256 megabytes input standard input output standard output Watchmen are in a danger and Doctor Manhattan t...

diaocuiguo2493的博客 161

为什么Nano Banana在图像一致性上碾压GPT和豆包?深度解析其技术原理与使用技巧

本文深度解析了Nano Banana在图像一致性上超越GPT和豆包等工具的技术原理。它通过基于参考图的强条件生成、精准的区域感知与掩码控制等核心技术,实现了“外科手术式”的精准图像编辑。文章还分享了包括提示词工程、参数调整在内的实用技巧,并探讨了通过API Key将其能力集成到自动化工作流中的潜力。

omega的博客 354

Codeforces 651C Watchmen【模拟】

题意: 求欧几里得距离与曼哈顿距离相等的组数。 分析: 化简后得到xi=xj||yi=yj,即为求x相等 + y相等 - x与y均相等。 代码: #include<iostream> #include<algorithm> using namespace std; const int maxn = 1000000 + 5; typ...

An55511的博客 232

数据库迁移策略实战:MySQL到PostgreSQL

数据库迁移是一项复杂且细致的任务,需要充分的准备工作、合适的迁移策略和严格的验证与优化步骤。通过选择合适的迁移工具、进行手动迁移和应用程序适配、以及迁移后的验证与优化,可以确保数据迁移的成功和业务的连续性。希望本文的分享能够为大家在MySQL到PostgreSQL的数据库迁移实战中提供一些有用的参考和启示。

shejizuopin的博客 1730

PyCharm 接入 OpenAI Codex CLI 的 4 步配置与调试实录

揭示 Codex CLI 在 PyCharm 中上下文失稳的四大根源:CLI 启动模式与 IDE 进程模型冲突、stdin/stdout 流式处理不兼容、环境变量污染、AST 注释缺失,并给出基于 Shell 脚本桥接与结构化上下文注入的稳定接入方案。

weixin_42627902的博客 372

【CodeForces】[651C]Watchmen

由题意可知满足条件的点 必然是x相同或者y相同 (可有等式化简得到)麻烦的地方在于存在 相同的点 所以计算时需要去除重复这一题写了有断断续续几个小时 所以思路有点混乱 到后面有点方 所以导致忘记了一些小技巧 然后越方越错 好在最后怼出来了也是一直想着避免加重 事实上换种思路 也可以想做先加上 然后去除重复的最后需要注意的是 数据类型要用__int64

BoilTask Talk Show 574

面向非平行语料的语音转换技术综述

摘要语音转换是语音及人工智能领域的一项研究课题,其目标是在保持源语音内容不变的情况下改变语音的音色,使其听上去像是由另一个目标说话人说出的,同时还需保证语音的质量和自然度。面向非平行语料的语音转换技术是当下的热门研究内容,其使用非平行的多说话人语音数据集进行模型训练,能完成多对多以及任意对任意的语音转换。对近年来面向非平行语料的语音转换进行了全面的总结和分析。首先概述了早期面向平行语料的语音转换及其缺陷,然后对当下面向非平行语料的语音转换的各类实现方法进行介绍和对比分析,最后对语音转换技术进行了总结和展望。

qq_61890005的博客 829

【Codeforces】-651C -Watchmen

点击打开题目 C. Watchmen time limit per test 3 seconds memory limit per test 256 megabytes input standard input output standard output Watchmen are in a dange

Bear1998的博客 510

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

CodeForces 651 C Watchmen

CodeForces 651 C Watchmen

Dacc123的博客 765

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

欧姆龙NJ/NX PLC的FINS通信与Node-RED可视化实战指南

在工业自动化与物联网平台快速融合的今天,产线数据采集已从简单的PLC监控演变为连接MES、SCADA与云端可视化系统的关键环节。要实现PLC数据的高效读取,理解底层通信协议是基础。FINS协议作为欧姆龙定义的工业以太网标准,以结构清晰、报文直观且不依赖额外授权为特点,成为连接NJ/NX系列PLC与上位机的主流方式。通过FINS/TCP报文逐字段拆解,开发者既能手动构造读写指令,也能借助Node-RED这一开源流编排工具,快速搭建实时仪表盘与数据推送链路。无论是面向本地的可视化大屏,还是通过MQTT将数据推送

weixin_34246551的博客 282

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

【CodeForces - 651C 】Watchmen(map)

Watchmen 直接上中文 Descriptions: 钟表匠们的好基友马医生和蛋蛋现在要执行拯救表匠们的任务。在平面内一共有n个表匠,第i个表匠的位置为(xi, yi). 他们需要安排一个任务计划,但是确发现了一些问题很难解决。马医生从第i个表匠到第j个表匠所需要的时间为|xi - xj| + |yi - yj|。然而蛋蛋所需要的时间为 要想成功完成任务,必须保证两人从第i个表匠出发...

weixin_30477293的博客 115

codeforces 651C. Watchmen

Description Watchmen are in a danger and Doctor Manhattan together with his friend Daniel Dreiberg should warn them as soon as possible. There are n watchmen on a plane, the i-th watchman is loca

WOLF的博客 458

Codeforces 651 C Watchmen【思维】

C. Watchmen time limit per test 3 seconds memory limit per test 256 megabytes input standard input output standard output Watchmen are in a danger and Doctor Manhattan together wi

mengxiang000000 555

CodeForces 651C Watchmen map

Watchmen are in a danger and Doctor Manhattan together with his friend Daniel Dreiberg should warn them as soon as possible. There arenwatchmen on a plane, thei-th watchman is located at point(x...

weixin_30820077的博客 79
上一篇: poj3667 Hotel 线段树延迟更新 区间合并
下一篇: poj2249 Binomial Showdown 求组合数
Daemoonn
博客等级 码龄11年 42粉丝 198原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值