Snowflake Snow Snowflakes
文章目录
- Snowflake Snow Snowflakes
Snowflake Snow Snowflakes
题意: 给定一个n个六边形雪花,判定是否存在相同的
分析: 链表hash
hash 值是所有的乘积以及和
const int P = 99991;
const int maxn = 100000+100;
int snow[maxn][6],tot;
int head[maxn],nxt[maxn];
int cal(int *a){int sum,mul;sum = mul = 0;for(int i = 0;i < 6; ++i){sum = (sum+a[i])%P;mul = 1ll*mul*a[i]%P;}return (sum+mul)%P;
}
bool cmp(int *a,int *b){for(int j = 0;j < 6; ++j){bool yes = true;for(int k = 0;k < 6; ++k)if(a[k] != b[(j+k)%6]) yes = false;if(yes) return true;yes = true;for(int k = 0;k < 6; ++k)if(a[k] != b[(j-k+6)%6]) yes = false;if(yes) return true;}return false;
}
bool Insert(int *a){int n = cal(a);// cout<<n<<endl;for(int i = head[n];i;i = nxt[i]){if(cmp(snow[i],a))return true;}++tot;memcpy(snow[tot],a,sizeof(snow[tot]));nxt[tot] = head[n];head[n] = tot;return false;
}
int main(void)
{int n;int a[6];cin>>n;for(int i = 1;i <= n; ++i){for(int j = 0;j < 6; ++j)scanf("%d",&a[j]);if(Insert(a)){return 0*puts("Twin snowflakes found.");}}puts("No two snowflakes are alike.");return 0;
}
Snowflake Snow Snowflakes相关推荐
- Snowflake Snow Snowflakes(哈希表的应用)
Snowflake Snow Snowflakes Time Limit: 4000MS Memory Limit: 65536K Total Submissions: 27312 Accep ...
- 【POJ No. 3349】 雪花 Snowflake Snow Snowflakes
[POJ No. 3349] 雪花 Snowflake Snow Snowflakes POJ 题目地址 [题意] 你可能听说过没有两片雪花是一样的,请编写一个程序来确定这是否是真的. 已知每片雪花6 ...
- Snowflake Snow Snowflakes(hash)
F - Snowflake Snow Snowflakes Time Limit:4000MS Memory Limit:65536KB 64bit IO Format:%I64d & ...
- POJ 3349 Snowflake Snow Snowflakes
/* 哈希第一题啊..! 谢谢 http://www.cnblogs.com/Dario67/archive/2011/04/09/2010724.html 的博主 这题投机取巧了,判断是否相等 直接 ...
- UVa 3349 Snowflake Snow Snowflakes(Hash)
http://poj.org/problem?id=3349 题意: 给出n片雪花留个角的长度,要求判断是否有一样的雪花. 思路: Hash表的应用. 首先将每个雪花所有角的总长计算出来,如果两片雪花 ...
- POJ3349 Snowflake Snow Snowflakes(哈希表)
题目链接http://poj.org/problem?id=3349 题意是说,有n片雪花,每片雪花都是有6个角,给出每片雪花每个角的长度,问里面有没有一样的雪花(给出数据的顺序是没有确定的). 虽然 ...
- 【POJ3349】Snowflake Snow Snowflakes(哈希表判重,维护一个集合)
problem 有n片雪花,每片有6个脚,每个脚有一个长度. 两片雪花是一样的当且仅当每个脚的长度顺序都一样(顺逆时针和开始位置不管) 求n片雪花中是否有一样的雪花. solution 维护一个哈希表 ...
- POJ3349 Snowflake Snow Snowflakes(hash)
题意: 雪花有六条棱,每条棱对应一个数,要求在一组雪花中看能否寻找到所有棱对应相同的雪花(棱有顺序要求). 要点: 刚自学了一下hash,这题刚上手有点思路但自己实在也写不出来,看了网上的代码觉得还是 ...
- .Snowflake Snow Snowflakes——解题报告
题目链接: http://poj.org/problem?id=3349 题目大意: 雪花上有666个数形成环状,只有当从某个位置为起点,按顺时针或逆时针,能完全和另一个雪花相同时,判断为有两个相同的 ...
最新文章
- Chart.js-雷达图分析(参数分析+例图)
- Leetcode刷题第1题:两数之和(基于Java语言)
- VS中怎样对C#项目进行单元测试
- Python学习笔记:Dict和Set
- UIButton中的三个UIEdgeInsets属性
- 双12压测引出的线上Full GC排查
- ASP.NET Framework深度历险(2)
- C/C++对文件的读写
- Ubuntu18.0.4深度学习环境搭建及相应软件安装(Update)
- java中文转英文_eclipse英文转中文怎么设置 eclipse中英文切换图文教程
- Mybaits入门搭建工程(selectOne,selectList,selectMap的用法)
- IE设置每次打开时都清除缓存
- 为FishBot模型注入物理属性并在Gazebo中显示
- 微信每天处理2.05亿通话 运营商只剩卖流量
- 肖仰华谈知识图谱:知识将比数据更重要,得知识者得天下
- XP系统启动时滚动条总是时间很长
- 中介者模式的实际应用
- 英国诺丁汉大学的AIMS与虚拟现实技术
- 最详细的XAMPP的安装及使用教程(图文)
- RHEL7——进程管理
热门文章
- 《机器学习实战:基于Scikit-Learn、Keras和TensorFlow第2版》-学习笔记(9):无监督学习技术
- 特斯拉自动驾驶功能更新:将上线红绿灯识别自动停车
- 【推荐】无需路由器,利用WIN7开启wifi,手机高速上网
- 用Wireshark看见TLS握手过程
- spawn cmd.exe ENOENT 错误 解决办法
- Python计算温度植被干旱指数(TVDI)
- 计算机需要那些高中数学知识点,高中数学-知识点总结-最全版.doc
- cfg80211 subsystem中的cfg80211_ops
- 排列组合和二项式定理
- 怎么用python读取excel图_如何用Python读取Excel中图片?