A1239 | [COCI-2011_2012-contest5]#6 RAZBIBRIGA
来源COCI
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
Mirko has already solved all crosswords available in daily newspapers, and he is too intimidated by ACTA to download new ones from the Internet. Now he has asked Frane to challenge him with a programming problem. Frane has eagerly responded with a brand new task, and was kind enough not to lock the task under copyright protection, so you are allowed to attempt it too!
Four words with equal lengths can be put together in a square such that two words mark horizontal edges, while the other two mark vertical edges. Horizontal words are read left to right, and vertical ones from top to bottom. Corner letters are shared by the two neighbouring edges. The figure below shows one possible square created from words “HLAD”, “NIVA”, “HSIN”, “DEDA”.
Your task is, given a list of equal-length words, to compute the number of different squares that can be put together from a subset of these words. You are not allowed to repeat a word in the same square. Two squares are different if they differ in at least one character.
Four words with equal lengths can be put together in a square such that two words mark horizontal edges, while the other two mark vertical edges. Horizontal words are read left to right, and vertical ones from top to bottom. Corner letters are shared by the two neighbouring edges. The figure below shows one possible square created from words “HLAD”, “NIVA”, “HSIN”, “DEDA”.
Your task is, given a list of equal-length words, to compute the number of different squares that can be put together from a subset of these words. You are not allowed to repeat a word in the same square. Two squares are different if they differ in at least one character.
输入格式
The first line of input contains the positive integer N (4 ≤ N ≤ 100 000), the number of words in the list.
Each of the next N lines contains a single word consisting only of uppercase English letters.
Each word will contain at most 10 characters. All words will be distinct and have equal length.
Each of the next N lines contains a single word consisting only of uppercase English letters.
Each word will contain at most 10 characters. All words will be distinct and have equal length.
输出格式
The first and only line of output must contain the required number of distinct squares.
Note: Test data will ensure that the solution fits in a 64-bit integer data type (int64 in Pascal, long long in C/C++).
Note: Test data will ensure that the solution fits in a 64-bit integer data type (int64 in Pascal, long long in C/C++).
输入输出样例
输入 #1
4 NIVA HLAD HSIN DEDA
输出 #1
2
输入 #2
6 BAKA BARA BALC CALC ARHC BLIC
输出 #2
8
暂无题解
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted