Codeforces Round #697 (Div. 3) C. Ball in Berland(1400)

2023-11-12

Codeforces 1475 C. Ball in Berland
在这里插入图片描述
在这里插入图片描述
题目分析:
这个题其实就是给你一堆坐标,让你找到合适的有多少对

思路分析:
坐标的话,首先想到用 pair<int,int>set 进行存储坐标,然后就是对坐标进行一次遍历,时间复杂度是 O(n)

AC代码:

#include <iostream>
#include <set>
#include <cstring>
 
#define PII pair<int,int>
#define ll long long
using namespace std;
const int N = 2 * 1e5 + 10;
 
set<PII> s;
 
int a, b, k;
 
int boy[N];
int girl[N];
 
int boy_num[N];
int girl_num[N];
 
int main() {
    int t;
    cin >> t;
    while (t--) {
        cin >> a >> b >> k;
        memset(boy_num,0,sizeof(boy_num));
        memset(girl_num,0,sizeof(girl_num));
        for (int i = 0; i < k; i++) {
            cin >> boy[i];
            boy_num[boy[i]]++;
        }
        for (int i = 0; i < k; i++) {
            cin >> girl[i];
            girl_num[girl[i]]++;
        }
        for (int i = 0; i < k; i++)
            s.insert({boy[i], girl[i]});
        ll ans = 0;
        // 对坐标进行遍历
        for (auto item : s) {
        	// 核心思想
            ans += k - boy_num[item.first] - girl_num[item.second] + 1;
        }
        // 每对算了两边,所以需要把 答案 / 2 才是最终结果
        cout << ans / 2 << endl;
        s.clear();
    }
    return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Codeforces Round #697 (Div. 3) C. Ball in Berland(1400) 的相关文章

随机推荐

  • [深入研究4G/5G/6G专题-59]: 以太网交换平台软件如何升级成基站平台软件

    前言 本文从全局的视角阐述把一个通用的Linux平台软件升级成基站平台软件 一 基站的硬件 1 1 设备硬件 1 2 SOC芯片
  • 不用看网课就能学到python的文章(第三天)

    紧接着上一篇不用看网课就能学到python的文章 第二天 Why does it work的博客 CSDN博客 如果说到语句 那我们应该了解一些一些python python最具特色的就是使用缩进来表示代码块 不需要使用大括号 行与缩进 i
  • spring mvc中log4j的配置与使用

    原文地址 http rockelixir iteye com blog 1902352 如果使用spring插件创建一个spring template project 它会默认带log4j 只要改下log4j的配置就可以使用了 如果自己创建
  • ppt地图分布图一块一块的怎么做_没想到地图还能这么用,简直是PPT图表神器!...

    本期导读 如何让你的PPT看起来高大上 本文教你一个鲜为人知的视觉化技巧 利用电子地图 制作PPT图表 即便你不懂PS 不懂设计 也能轻松上手 PPT地图图表的妙用 三种PPT地图的创建方法 本文是2019年3月推送的第20篇干货 计159
  • 全国电赛K题江苏省二等奖----王澳刚

    2017年TI杯江苏省大学生电子设计大赛 题目 单相用电器分析监测装置 题目编号 K题 参赛队编号 ZJ022 参赛队学校 江苏科技大学 参赛队学生 王澳刚 雷松泽 匡正 指导老师 王宝忠 李垣江 二0一七年八月 摘 要 本系统以STM32
  • TCP:为什么是三次握手

    定义 HTTP是基于传输层的TCP协议 而TCP是一个端到端的面向连接的协议 所谓的端到端可以理解为进程到进程之间的通信 所以HTTP在开始传输之前 首先需要建立TCP连接 而TCP连接的过程需要所谓的 三次握手 在TCP三次握手之后 建立
  • C++从入门到放弃之:C++ 左值引用与右值引用详解

    C 从入门到放弃 C 引用 1 左值引用 2 万能引用 常引用 3 右值引用 4 引用型函数返回值 5 引用和指针 6 函数传参传递指针和引用的区别 总结 C 引用 1 左值引用 定义 引用即别名 某个变量的别名 对引用的操作就等同于对变量
  • idea导入java文件_怎么在idea中导入Java文件并运行文件

    怎么在idea中导入Java文件并运行文件 发布时间 2020 06 22 20 58 37 来源 亿速云 阅读 926 作者 元一 这篇文章将为大家详细讲解有关怎么在idea中导入Java文件并运行文件 小编觉得挺实用的 因此分享给大家做
  • Golang-循环变量作用域针对那些数据类型会出现问题

    一 原因 在 Go 中 循环变量的作用域是整个 for 循环语句块 因此 循环变量在 for 循环语句块中的代码都是可见的 但是 当循环变量的值被用于闭包 协程或者使用指针类型的数据结构时 会出现一些问题 这是因为循环变量的值在每一次迭代中
  • Add One

    Add One 题意 给一个数n 有m次操作 每次操作把n的每一位加一 例如1912操作一次后变成21023 问操作m次后 数字的位数 思路 可以初始化0 9每一个数字操作k次后的位数f i k k lt m 然后把n的每一位操作后的长度加
  • LeetCode-Python-1584. 连接所有点的最小费用(MST)

    给你一个points 数组 表示 2D 平面上的一些点 其中 points i xi yi 连接点 xi yi 和点 xj yj 的费用为它们之间的 曼哈顿距离 xi xj yi yj 其中 val 表示 val 的绝对值 请你返回将所有点
  • Java-网络编程

    网络通信 1 两台及以上设备之间通过网络实现数据传输 2 将数据通过网络从一台设备传送到另一台设备 3 java net包下提供了一系列的类或者接口使用来实现网络通信 网络 1 两台或者多台设备通过一定物理设备连接起来构成了网络 2 根据覆
  • 【Android】-- 编辑框EditText、焦点变更监视器、文本变化监视器

    一 编辑框EditText 编辑框用于接收键盘输入的文字 由文本视图派生而来 除了TextView已有的各种属性和方法 EditText还支持下列XML属性 inputType 指定输入的文本类型 输入类型的取值说明如下表 若同时使用多种文
  • GOTURN——Learning to Track at 100 FPS with Deep Regression Networks

    文章的题目叫 Learning to Track at 100 FPS with Deep Regression Networks 算法简称 GOTURN Generic Object Tracking Using Regression N
  • 在企业当中搭建samba服务器

    目录 项目简介 项目分析 项目实施 1 修改防火墙设置 2 安装samba并启动samba服务 3 建立共享目录 4 创建访问账号 5 修改配置文件 6 测试配置文件 7 测试Samba服务器 1 完成只有行政部的用户可以上传和删除comp
  • 判断字符串是否是正确的IP格式的C语言函数

    来自 http blog csdn net shanzhizi 一个用于识别字符串是否是IPV4的C语言函数 保留下来供大家参考使用 include
  • Unity-C#中关于时间戳的一些方法

    转自 http www narkii com club thread 367980 1 html
  • 【FPGA】RGMII接口

    目录 1 RGMII 接口概要 2 RGMII 接口介绍 2 1 MII接口 2 2 RMII接口 2 3 GMII接口 2 4 RGMII接口 1 RGMII 接口概要 以太网的通信离不开物理层 PHY 芯片的支持 以太网 MAC 和 P
  • linux中printf命令,总结linux下printf命令的用法

    printf format and print date 通过printf的选项格式化输出数据 基本英文学习 二进制 binanry number 八进制 otcal number 十进制 decimal number 十六进制 hexad
  • Codeforces Round #697 (Div. 3) C. Ball in Berland(1400)

    Codeforces 1475 C Ball in Berland 题目分析 这个题其实就是给你一堆坐标 让你找到合适的有多少对 思路分析 坐标的话 首先想到用 pair