#SFJSJJZN3037. 「Snowflake Snow Snowflakes」 雪花雪花雪花

    ID: 824 传统题 1000ms 128MiB 尝试: 8 已通过: 1 难度: 10 上传者: 标签>来源算法竞赛进阶指南哈希表字符串的最小表示法3

「Snowflake Snow Snowflakes」 雪花雪花雪花

题目描述

有 N 片雪花,每片雪花由六个角组成,每个角都有长度。

第i片雪花六个角的长度从某个角开始顺时针依次记为 ai,1,ai,2,,ai,6a_{i,1},a_{i,2},…,a_{i,6}

因为雪花的形状是封闭的环形,所以从任何一个角开始顺时针或逆时针往后记录长度,得到的六元组都代表形状相同的雪花。

例如 ai,1,ai,2,,ai,6a_{i,1},a_{i,2},…,a_{i,6}ai,2,ai,3,,ai,6ai,1a_{i,2},a_{i,3},…,a_{i,6},a_{i,1} 就是形状相同的雪花。

ai,1,ai,2,,ai,6a_{i,1},a_{i,2},…,a_{i,6}ai,6,ai,5,,ai,1a_{i,6},a_{i,5},…,a_{i,1} 也是形状相同的雪花。

我们称两片雪花形状相同,当且仅当它们各自从某一角开始顺时针或逆时针记录长度,能得到两个相同的六元组。

求这 N 片雪花中是否存在两片形状相同的雪花。

输入格式

第一行输入一个整数 N,代表雪花的数量。

接下来 N 行,每行描述一片雪花。

每行包含 6 个整数,分别代表雪花的六个角的长度(这六个数即为从雪花的随机一个角顺时针或逆时针记录长度得到)。

同行数值之间,用空格隔开。

输出格式

如果不存在两片形状相同的雪花,则输出:

No two snowflakes are alike.

如果存在两片形状相同的雪花,则输出:

Twin snowflakes found.

数据范围

1n100,0001 \le n \le 100,000, 0ai,j<10,000,0000 \le a_{i,j} <10,000,000

输入样例:

2
1 2 3 4 5 6
4 3 2 1 6 5

输出样例:

Twin snowflakes found.

来源

  • 《算法竞赛进阶指南》
  • acwing 可能含有视频讲解