[题解]Cities and States-S

这是一道关于寻找特定关系城市对的编程题。题目要求找出那些城市名的前两个字母恰好是对方州代码的两个城市,奶牛们对此感到好奇并希望知道有多少这样的城市对。给定输入包含城市数量和每个城市及其对应的州代码,你需要输出满足条件的特殊城市对的数量。样例输入和输出分别给出了一个例子,其中只有一对特殊城市(弗林特和迈阿密)。解决方案建议使用映射数据结构进行处理。
摘要由CSDN通过智能技术生成

题目描述
为了促进奶牛的智力发展, Farmer John 在牛棚的墙上放置了一幅很大的美国地图。在奶牛们花费
很多时间研究地图后,他们注意到一个奇特的现象。例如,有这样两个城市:弗林特(Flint),其州代
码为 MI,和迈阿密(Miami),州代码为 FL,他们之间存在一个特殊的关系: “弗林特”(Flint)的前两个
字母刚好是迈阿密的州代码(FL),同时迈阿密(Miami)前两个字母也刚好是弗林特的州代码(MI)。如果
两个来自不同州的城市满足这一属性,那我们就说这两个城市是特殊的一对。奶牛们想知道有多少对这
样的城市存在。请帮助他们解决这个有趣的地理难题!
输入
第 1 行输入地图上城市的个数 N;
接下去的 N 行,每行分别输入两个字符串。第一个表示城市名称(字符串由大写英文字母组成, 最少两
个,最多不能超过 10 个),第二个表示该城市的州代码(两个大写字母)。多个城市的名称允许相同,但
他们必须属于不同的州。
输出
输出共一行一个整数,满足条件的特殊城市对数。
样例输入 Copy
6
MIAMI FL
DALLAS TX
FLINT MI
CLEMSON SC
BOSTON MA
ORLANDO FL
样例输出 Copy
1
提示
对于 20%的数据: 1≤N≤2,000;
对于 50%的数据: 1≤N≤25,000;
对于 100%的数据: 1≤N≤200,000;

分析

对于这道题,我们不妨考虑用 map \text{map} m

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值