题解:P10467 [CCC 2007] Snowflake Snow Snowflakes

题目通道


思路:

使用哈希映射加 unordered_map 实现(map 会超时)。开一个数组存入数值,经过把每个数字顺时针和逆时针都映射一遍,如果在 map 有映射值相同的。输出 Twin snowflakes found.。如果等到输入完每一次描述后都未找到相同的,输出 No two snowflakes are alike.

核心代码:

void ha(long long x){//顺时针
	ans=0;
	for(int i=1;i<=6;i++){
		ans=ans*1l+s[x];
		if(x!=6) x+=1;
		else x=1;
	}
}
void ha1(long long x){//逆时针
	ans=0;
	for(int i=1;i<=6;i++){
		ans=ans*1l+s[x];
		if(x!=1) x-=1;
		else x=6;
	}
}

注意:

  • 输入输出要优化。
  • 请用 long long。

代码

posted @ 2025-07-26 18:49  WMWD  阅读(10)  评论(0)    收藏  举报