poj3349(Hash)
来源:互联网 发布:淘宝怎么联系店家客服 编辑:程序博客网 时间:2024/04/27 20:23
#include<stdio.h>#include<stdlib.h>#include<math.h>#include<string.h>#define For(i,j,k) for(i=j;i<=k;++i)struct hash_head{int next;}head[100010];struct node{int num[7],next;}nod[100020];int n,t[7],flag,dq;int cmp(int a[7],int b[7]){int f,x,y,i,j;For(i,1,6) {x=1;y=i;f=0;For(j,1,6) {if (a[x]!=b[y]) {f=1;break;}++x;++y;if (y>6) y=1;}if (!f) break;}if (!f) return 1;int c[7];c[1]=b[6];c[2]=b[5];c[3]=b[4];c[4]=b[3];c[5]=b[2];c[6]=b[1];For(i,1,6) {x=1;y=i;f=0;For(j,1,6) {if (a[x]!=c[y]) {f=1;break;}++x;++y;if (y>6) y=1;}if (!f) break;}return (!f);}void inc(){int sum;sum=(t[1]+t[2]+t[3]+t[4]+t[5]+t[6])%100000;int i=head[sum].next;while (i!=0) {if (i!=0&&cmp(t,nod[i].num)) {printf("Twin snowflakes found.");flag=1;return ;} else {if (nod[i].next) i=nod[i].next; else break;}}if (!head[sum].next) head[sum].next=++dq; else nod[i].next=++dq;nod[dq].num[1]=t[1];nod[dq].num[2]=t[2];nod[dq].num[3]=t[3];nod[dq].num[4]=t[4];nod[dq].num[5]=t[5];nod[dq].num[6]=t[6];}int main(){int i;scanf("%d",&n);For(i,1,n) {scanf("%d%d%d%d%d%d",&t[1],&t[2],&t[3],&t[4],&t[5],&t[6]);inc();if (flag) return 0;}printf("No two snowflakes are alike.");return 0;}
1 0
- poj3349-hash
- poj3349--Hash
- poj3349(Hash)
- POJ3349 HASH
- Hash练习题:【POJ3349】
- poj3349(hash)
- POJ3349【手写Hash】
- poj3349(数字hash)
- POJ3349 Snowflake Snow Snowflakes(hash)
- POJ3349 Snowflake Snow Snowflakes(hash)
- poj3349--Snowflake Snow Snowflakes(hash)
- poj3349 Snowflake Snow Snowflakes之hash入门
- POJ3349总结(第一次用hash解决问题)
- POJ3349-Snowflake Snow Snowflakes(hash表)
- poj3349
- poj3349
- POJ3349
- POJ3349
- ssh用法及命令
- spring boot实战(第十五篇)嵌入tomcat源码分析
- POJ-1006 Biorhythms 【中国剩余定理模板】
- Node.js基于浏览器聊天室
- 数据排列
- poj3349(Hash)
- jQuery中json对象与json字符串互换
- 完全搬家了
- 浏览器跨域通信
- 限制一个UITextField的输入长度
- 编译器做的那些事儿
- 实现无限自动循环的Viewpager,广告轮询页面
- scoper_ptr与auto_ptr
- 动态规划---三角矩阵最小路径