洛谷 AT_abc275_c [ABC275C] Counting Squares 题解

大致题意

求以 # 为顶点的正方形个数。

思路分析

一道水黄。

首先我们可以看到题目范围非常小,仅仅只是一个 9 × 9 9\times9 9×9 的字符矩阵,而且还给了 2 2 2 秒的时间,所以是完全可以暴力的。

可以用 set 存储每个 # 号的位置,枚举正方形的两个点 i i i j j j,设另外两个点为 n n n m m m,容易得到 n x = i x + i y − j y , n y = i y − i x + j x n_x=i_x+i_y-j_y,n_y=i_y-i_x+j_x nx=ix+iyjy,ny=iyix+jx m x = j x + i y − j y , m y = j y − i x + j x m_x=j_x+i_y-j_y,m_y=j_y-i_x+j_x mx=jx+iyjy,my=jyix+jx 四个公式求出 n n n m m m 的坐标,在判断是否是 # 即可。

需要注意的是,由于每个角在枚举时都会算一遍,所以答案要乘 1 4 \frac{1}{4} 41

Code

代码如下:

#include <iostream>
#include <set>
using namespace std;
signed main() {ios::sync_with_stdio(false), cin.tie(), cout.tie();char ch;int ans = 0;set <pair<int, int>> s;for (int i = 1; i <= 9; ++i)for (int j = 1; j <= 9; ++j) {cin >> ch;if (ch == '#') s.insert({i,j});//初始化 s}for (pair <int, int> i : s)for (pair <int, int> j : s)if (i != j) {//如果不是同一个点才进行操作int x = i.second - j.second, y = i.first - j.first;if (s.find({i.first + x, i.second - y}) != s.end() && s.find({j.first + x, j.second - y}) != s.end()) ++ans;//判断,累加答案}cout << ans / 4;//答案要除以 4return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/54824.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue打包exe之electron-quick-start的npm install 报错

vue打包exe之electron-quick-start的npm install 报错 1、github地址2、问题3、解决4、其他(打包exe)参考 1、github地址 https://github.com/electron/electron-quick-start2、问题 我使用的pnpm install正常安装&#xff0c;执行npm start提示错误 3、解决 在package.js…

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-23

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-23 本期&#xff0c;我们对大语言模型在表情推荐, 软件安全和 自动化软件漏洞检测等方面如何应用&#xff0c;提供几篇最新的参考文章。 1 Semantics Preserving Emoji Recommendation with Large Language Mod…

Hadoop 性能优化高频面试题及答案

目录 高频面试题及答案1. 如何通过调整 MapReduce 任务的并行度优化性能?2. 如何通过数据压缩优化 MapReduce 性能?3. 如何通过调整 IO 相关参数提升 Hadoop 性能?4. 如何优化 NameNode 和 DataNode 的性能?5. 如何通过优化 Shuffle 阶段提高 Hadoop 性能?6. 如何通过合理…

如何正确连接和使用滑动变阻器?

滑动变阻器是可以改变电阻值的电子元件&#xff0c;广泛应用于各种电子设备和电路中。正确连接和使用滑动变阻器对于保证电路的正常工作和延长设备的使用寿命至关重要。以下是关于如何正确连接和使用滑动变阻器的一些建议&#xff1a; 了解滑动变阻器的基本原理和结构&#xf…

C# 里,常用的数据类型转换说明,以及简单示例

在 C# 中&#xff0c;类型转换是将一个数据类型的值转换为另一个数据类型的过程。类型转换可以分为两种&#xff1a;隐式类型转换和显式类型转换&#xff08;也称为强制类型转换&#xff09;。 隐式类型转换 隐式转换是不需要编写代码来指定的转换&#xff0c;编译器会自动进…

DERT目标检测源码流程图main.py的执行

DERT目标检测源码流程图main.py的执行 官网预测脚本 补充官网提供的预测部分的代码信息。 from PIL import Image import requests import matplotlib.pyplot as pltimport torch from torch import nn from torchvision.models import resnet50 import torchvision.transform…

大数据Flink(一百二十四):案例实践——淘宝母婴数据加速查询

文章目录 案例实践——淘宝母婴数据加速查询 一、​​​​​​​创建数据库表并导入数据 二、​​​​​​​​​​​​​​创建session集群 三、​​​​​​​​​​​​​​源表查询 四、​​​​​​​​​​​​​​指标计算 案例实践——淘宝母婴数据加速查询 随着…

Poetry进行python项目创建和管理

Poetry 是一个用于依赖管理和打包的工具&#xff0c;它让创建和管理 Python 项目变得更加简单。以下是如何使用 Poetry 创建和管理 Python 项目的步骤。 安装 Poetry 首先&#xff0c;你需要安装 Poetry。你可以使用官方提供的安装脚本来安装 Poetry&#xff1a; curl -sSL …

新建flask项目,配置入口文件,启动项目

pycharm新建flask项目时&#xff0c;会提供一个创建flask项目的导向&#xff0c;自动设置虚拟环境&#xff0c;并且安装flask及其依赖而vscode新建flask项目时&#xff0c;需要手动设置虚拟环境并安装flask&#xff0c;需要在终端使用pip install flask命令来安装flask及其依赖…

无人船在海洋勘探领域的应用!

一、具体应用 海底地形测绘&#xff1a; 无人船可以搭载多波束测深仪等先进设备&#xff0c;进行高精度的海底地形测绘。这些设备能够生成详细的海底地形图&#xff0c;为海洋工程设计和施工提供详尽的水下地形资料。 海底资源勘探&#xff1a; 通过搭载磁力仪、重力仪等地…

vue框架学习 -- 表单开发之页面自定义显示值

在 Vue 2.0 中&#xff0c;如果在使用 Element UI 的 组件&#xff0c;并希望自定义 中显示的 prop 属性的值&#xff08;比如&#xff0c; memberName&#xff09;&#xff0c;有几种方法可以实现这一点。最直接的方法之一是在 Vue 组件的 data 函数或计算属性&#xff08;com…

HTML5实现唐朝服饰网站模板源码

文章目录 1.设计来源1.1 网站首页-界面效果1.2 唐装演变-界面效果1.3 唐装配色-界面效果1.4 唐装花纹-界面效果1.5 唐装文化-界面效果 2.效果和源码2.1 动态效果2.2 源代码 源码下载万套模板&#xff0c;程序开发&#xff0c;在线开发&#xff0c;在线沟通 作者&#xff1a;xcL…

【Kubernetes】常见面试题汇总(四十一)

目录 94. iptables 四个表五个链。 95. Kubernetes 如何简化容器化部署&#xff1f; 特别说明&#xff1a; 题目 1-68 属于【Kubernetes】的常规概念题&#xff0c;即 “ 汇总&#xff08;一&#xff09;~&#xff08;二十二&#xff09;” 。 题目 69-113 属于【Kuber…

TikTok直播:选择TK直播盒子还是专线节点?

随着短视频平台的蓬勃发展&#xff0c;TikTok&#xff08;抖音国际版&#xff09;直播已成为主播和商家推广产品、增强与观众互动的重要手段。在这一过程中&#xff0c;选择合适的直播工具和技术方案显得尤为重要。对于希望在TikTok上取得成功的主播而言&#xff0c;使用TK直播…

JSON 教程

JSON 教程 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> </head> …

UE虚幻引擎云渲染汽车动画的优势!

在汽车广告和动画制作领域&#xff0c;虚幻引擎&#xff08;UE&#xff09;结合云渲染技术正掀起一场技术革命。这项技术以其高性能、成本效益和灵活性&#xff0c;为创作者提供了强大的工具&#xff0c;以实现更加逼真和高效的汽车动画制作。 一、为什么选择UE虚幻引擎制作汽车…

学习笔记每日一题

给你一个整数 n &#xff0c;找出从 1 到 n 各个整数的 Fizz Buzz 表示&#xff0c;并用字符串数组 answer&#xff08;下标从 1 开始&#xff09;返回结果&#xff0c;其中&#xff1a; answer[i] "FizzBuzz" 如果 i 同时是 3 和 5 的倍数。answer[i] "Fizz…

2024年厦门市大数据创新应用大赛圆满收官

2024年厦门市大数据创新应用大赛圆满收官 2024年9月19日-20日&#xff0c;由厦门市数据管理局、厦门市公安局、厦门市生态环境局联合主办&#xff0c;厦门市信息中心承办的2024年厦门市大数据创新应用大赛圆满收官。 经专家评审团评审 最终决出获奖名单 决赛评审会现场 2024年…

PMI-ACP®认证考试内容将于2025年第一期考试更新

PMI敏捷管理专业人士&#xff08;PMI-ACP&#xff09;认证即将在2025年迎来引入中国大陆的十周年纪念。 十年时间&#xff0c;我们见证了敏捷实践方法普及和敏捷项目管理的“知行合一”&#xff0c;采用敏捷方法的中国企业团队比例的快速持续增长&#xff0c;中国PMI-ACP专业人…

HarmonyOS 自定义 loading 效果

大致思路 主要利用 Progress 组件 利用aboutToAppear周期函数&#xff1a;在创建自定义组件的新实例后&#xff0c;在执行其build()函数之前执行 利用aboutToDisappear函数在自定义组件析构销毁之前执行&#xff0c;这里主要用来清除定时器 实现效果 组件封装 components/H…