洛谷P3405 [USACO16DEC]Cities and States省市

P3405 [USACO16DEC]Cities and States省市

题目描述

To keep his cows intellectually stimulated, Farmer John has placed a large map of the USA on the wall of his barn. Since the cows spend many hours in the barn staring at this map, they start to notice several curious patterns. For example, the cities of Flint, MI and Miami, FL share a very special relationship: the first two letters of "Flint" give the state code ("FL") for Miami, and the first two letters of "Miami" give the state code ("MI") for Flint.

Let us say that two cities are a "special pair" if they satisfy this property and come from different states. The cows are wondering how many special pairs of cities exist. Please help them solve this amusing geographical puzzle!

为了让奶牛在智力上受到刺激,农夫约翰在谷仓的墙上放了一张美国地图。由于奶牛在谷仓里花了很多时间盯着这张地图,他们开始注意到一些奇怪的关系。例如,城市Flint,在MI省,或者Miami在FL省,他们有一种特殊的关系:“Flint”市前两个字母就是“FL”省,迈阿密前两个字母是“MI”省。

让我们说,两个城市是一个“特殊的一对”,如果他们满足这个属性,来自不同的省。奶牛想知道有多少特殊的城市存在。请帮助他们解决这个有趣的地理难题!

输入输出格式

输入格式:

 

The first line of input contains NN (1 \leq N \leq 200,0001N200,000), the number ofcities on the map.

The next NN lines each contain two strings: the name of a city (a string of at least 2 and at most 10 uppercase letters), and its two-letter state code (a string of 2 uppercase letters). Note that the state code may be something like ZQ, which is not an actual USA state. Multiple cities with the same name can exist, but they will be in different states.

输入的第一行包含(),地图上的城市数量。

下一行包含两个字符串:一个城市的名称(字符串至少2个最多10个大写字母),和它的两个字母的州代码(一串2个大写字母)。注意状态代码可能像ZQ,这并不是一个真正的美国。同一名称的多个城市可以存在,但它们将处于不同的州。

 

输出格式:

 

Please output the number of special pairs of cities.

请输出特殊城市对数。

 

输入输出样例

输入样例#1:
6
MIAMI FL
DALLAS TX
FLINT MI
CLEMSON SC
BOSTON MA
ORLANDO FL
输出样例#1:
1
/*样例可以直接看成下面这个样子的:MIFLDATXFLMICLSCBOMAORFL如果有满足题意,那么就是MIFL 和 FLMI,那么,这里的有效数据只有四个字母,那么每一行我们就可以看作一个四位26进制数!!维护两个数组,一个hash1[456976],一个hash1[456976],具体456976是什么意思,是因为如果我们将A看做0,B看做1……Z看做25,那么最小的数AAAA=0,就是最大的数就是ZZZZ=((25*26+25)*26+25)*26+25=456975。那么,问题轻易解出——hash1表示原来的数,hash2表示市编号和州编号翻转后的表示的数。然后循环一遍,算出答案。注意此时算出的答案是两倍的,因为每个算了两遍。
*/
#include<iostream>
#include<cstdio>
using namespace std;
#define maxn 26*26*26*27
int n,h1[maxn],h2[maxn];
char s1[100],s2[100];
int main(){scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%s%s",s1+1,s2+1);if(s1[1]!=s2[1]||s1[2]!=s2[2]){int x1=(((s1[1]-'A')*26+s1[2]-'A')*26+s2[1]-'A')*26+s2[2]-'A';int x2=(((s2[1]-'A')*26+s2[2]-'A')*26+s1[1]-'A')*26+s1[2]-'A';h1[x1]++;h2[x2]++;}}long long ans=0;for(int i=0;i<maxn;i++)ans+=h1[i]*h2[i];ans/=2;cout<<ans;
}

 

转载于:https://www.cnblogs.com/thmyl/p/7512154.html

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

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

相关文章

天线的原理

关注、星标公众号&#xff0c;不错过精彩内容来源&#xff1a;中兴文档小时候家里的收音机、电视机&#xff0c;都带着可以灵活转动拉伸的杆子&#xff0c;大家一定对这个可以转来转去的杆子记忆犹新&#xff0c;或许也好奇的发现这个杆子的长度与方向和收音机、电视的接收效果…

2d 蓝图_“蓝图”卷积--对深度可分离卷积的再思考

论文&#xff1a;Rethinking Depthwise Separable Convolutions: How Intra-Kernel Correlations Lead to Improved MobileNetshttps://arxiv.org/pdf/2003.13549.pdf​arxiv.org代码地址&#xff1a;zeiss-microscopy/BSConv​github.com一、背景一些轻量级的网络&#xff0c;…

Node.js 得到当前目录下文件修改文件名

博客园第一篇,平时都用 .net ,现在 node.js 比较火&#xff0c;就用它做一些小工具&#xff0c;比较方便 Node.js 得到当前目录下文件修改文件名,把 .txt 修改为.md var fs require(fs); var fileDirectory __dirname if (fs.existsSync(fileDirectory)) {fs.readdir(fileDir…

原来你也在写公众号

现在凌晨1点&#xff0c;我睡不着&#xff0c;因为今天打球了&#xff0c;每次打球回来我总是睡得很奇怪&#xff0c;奇怪有时候打球回来一躺下就睡着了&#xff0c;有时候打球回来就会习惯性失眠。脑海里总是浮现各种打球的进球动作&#xff0c;然后各种幻想&#xff0c;再加上…

中的数组怎么转成结构体_PLC知识,什么是数组和结构体?

今天给大家介绍一下什么是数组&#xff0c;什么是结构体&#xff0c;关于数组我们会介绍数组的定义、它的使用方法&#xff0c;关于结构体我们会介绍结构体的使用、怎么去建立一个结构体等知识&#xff0c;之前也是有部分学员有问过这些问题的&#xff0c;那么都一块儿给大家讲…

MMU那些事儿

最近在重新看这部分知识点&#xff0c;内存管理和进程调度应该是Linux下最核心的两个东西&#xff0c;不管你做得多牛逼了&#xff0c;这两点拿出来讨论&#xff0c;总是会让人眼前一亮&#xff0c;或者是可以讨论很久很久&#xff0c;这篇文章&#xff0c;读完后可能也可以让大…

51Nod 1530 稳定方块

瓦西亚和皮台亚摆放了m个方块。方块被编号为0到m-1(每个号码出现恰好一次)。现在建立一个座标系OX表示地面&#xff0c;OY的方向是竖直向上的。每一方块的左下角有一个座标而且是整点座标。 摆放好的方块一定要是稳定的。稳定的含意是每一个不在地面上的方块在他的下面至少有一…

C语言、嵌入式中几个非常实用的宏技巧

宏打印函数 在我们的嵌入式开发中&#xff0c;使用printf打印一些信息是一种常用的调试手段。但是&#xff0c;在打印的信息量比较多的时候&#xff0c;就比较难知道哪些信息在哪个函数里进行打印。特别是对于异常情况的打印&#xff0c;我们需要快速定位到异常情况的位置。这时…

canvas 多次画图效果_canvas练习之终极的奔跑小人

这次做一个终极的练习&#xff0c;先看一下最后的效果。一个不停奔跑的小人&#xff0c;点击鼠标后会让他跑到目的地&#xff0c;并且呈现不同的角度。下面来看一下如何一步步来实现它的。准备网上下载了一张图片&#xff0c;其中包含了小人面向不同角度奔跑的各个分解动作。新…

loadrunner11安装,提示少了Microsoft Visual c++2005 sp1运行时组件解决办法

解决方法&#xff1a;1、进入loadrunner-11\Additional Components\IDE Add-Ins\MS Visual Studio .NET2、安装&#xff1a;LRVS2005IDEAddInSetup.exe3、再安装loadrunner破解方法&#xff1a;1、把loadrunner相关程序全部退出&#xff1b;2、把lm70.dll、mlr5lprg.dll放到安装…

C语言的爱你永不悔

#前言今天是520节&#xff0c;昨天晚上睡觉的时候&#xff0c;我家地瓜一直说520,520&#xff0c;我不知道要干啥&#xff0c;我就说&#xff0c;要睡就睡&#xff0c;不睡就起来。今天我看了朋友圈&#xff0c;我才知道原来520就是「我爱你」的意思。今天在朋友圈看到的一个小…

服务网关zuul之二:过滤器--请求过滤执行过程(源码分析)

Zuul的核心是一系列的过滤器&#xff0c;这些过滤器可以完成以下功能&#xff1a; 身份认证与安全&#xff1a;识别每个资源的验证要求&#xff0c;并拒绝那些与要求不符的请求。审查与监控&#xff1a;在边缘位置追踪有意义的数据和统计结果&#xff0c;从而带来精确的生成视图…

l4 l7 代理_什么是四层(L4 proxy)和七层负载均衡(L7 proxy)?区别是什么? 翻译自Nginx官网...

阅读前的小说明&#xff1a;由于工作需要&#xff0c;本人正在研究微服务架构。而微服务的服务网格( Service Mesh )架构中&#xff0c;需要选择一种 proxy 作为每个微服务之间通讯的代理。因此为了定夺微服务中常用的两种代理&#xff0c;即&#xff1a; Nginx 和 Envoy 如何选…

Linux 下的0 1 2特殊文件描述符~

最近在做项目的时候遇到的几个知识点&#xff0c;我觉得非常有意思&#xff0c;以前学Linux的时候也有接触到管道方面的&#xff0c;但是在应用中却基本没有遇到过。还有Linux下的几个特殊的文件描述符&#xff0c;用这几个文件描述符可以做很多事情&#xff0c;能做什么事情决…

攻防比赛_2020年度泉州市大学生网络安全攻防比赛在黎明职业大学圆满落幕

10月16日下午&#xff0c;作为2020年国家网络安全宣传周泉州市系列活动之一&#xff0c;“泉州市大学生网络安全攻防比赛”在黎明职业大学智慧教学中心成功举办并圆满落幕。此次比赛由泉州市互联网信息办公室、泉州市教育局主办&#xff0c;黎明职业大学和泉州市网络与信息安全…

17-9--18:了解Linux的命令格式,今天复习的已知命令和新命令

熟悉的命令&#xff1a; cp -r 需要复制的文件夹 复制文件夹到指定文件夹 复制文件夹到文件夹、复制文件到文件夹 cat 需要复制的文件 > > 复制到指定文件 复…

gitlab 如何关闭force push

把不允许force push的分支设置成保护分支&#xff0c;Push的时候就会提示不能force psuh。

camera中文版软件 ip_ip camera网络摄像机

IP Camera Viewer是一个方便可靠能够通过IP地址监控多台摄像头的软件。 需要的朋友们赶紧下载试试吧&#xff01;你可以在几分钟之内设置一个免费的IP摄像监控系统&#xff0c; 保持在家里&#xff0c;办公室&#xff0c;停车场或任何地方&#xff0c;你都可以监控。同时查看多…

Ubuntu16.04通过GPT挂载硬盘

一般而言&#xff0c;服务器上挂载的硬盘都是比较大的&#xff0c;传统的对硬盘进行分区需要在终端敲sudo fdisk进行操作&#xff0c;但是&#xff0c; 当挂载的硬盘的容量大于2T的时候&#xff0c;是无法通过sudo fdisk进行挂载的&#xff0c;这个时候必须要进行GPT进行挂载&a…

Mplayer后台播放没有声音

昨天的文章&#xff0c;我觉得虽然不是很复杂&#xff0c;但是我自认为很多人应该是不懂的&#xff0c;不过好像阅读量不是很好&#xff0c;今天转发我师弟的一篇文章&#xff0c;我觉得这个也是大家没有注意到的。Linux 下的0 1 2特殊文件描述符~一、平台Ubuntu16.04(64位)二、…