A - SnowflakeSnowSnowflakes解题报告
来源:互联网 发布:mac os beta 回退 编辑:程序博客网 时间:2024/06/08 16:34
#include<stdio.h>#include<memory.h>const int MAX=50021;int hash [50022][7],sel[50022],a[100001][7];int main(){int N,i,j,sum,o1,o3,k;memset(hash,0,sizeof(hash));memset(sel,0,sizeof(sel));scanf("%d",&N);for(i=0;i<N;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]); o3=0; for(i=0;i<N;i++) //*********算法实现******* { sum=0; for(j=0;j<6;j++) sum+=a[i][j]; sum=sum%MAX; //因为sum可能很大,所以对一个大素数取模,这样减小hash数列的范围。 if(sel[sum]==0) { sel[sum]=1; for(int k=0;k<6;k++) hash[sum][k]=a[i][k]; //sel数组用来判断此时hash数组上对应的是否已存在,不存在则记录1,且将此部分赋给hash数组。 } else //如该位置上已存在,则比较是否相同 { for(k=0;k<6;k++) { o1=0; for(j=0;j<6;j++) if(hash[sum][k]==a[i][j]) { o1=1; break; } if(o1==0) break; } if(o1==1) { o3=1; printf("Twin snowflakes found.\n"); break; } } } if(o3==0) printf("No two snowflakes are alike.\n"); return 0;}
//题目大意就是找到两片相同的雪花!我发现只比较有没有完全相同长度的臂就可以了,不需要按时针顺序比较,可能是题目不严谨。
- A - SnowflakeSnowSnowflakes解题报告
- A - SnowflakeSnowSnowflakes解题报告(黄杰)
- OPJ-3349 SnowflakeSnowSnowflakes 解题报告(hash) 两片相同的雪花
- A - A+B(解题报告)
- A+B Coming 解题报告
- USACO A Game解题报告
- 解题报告 codeforces 242A
- USACO A Game 解题报告
- codeforces 1A 解题报告
- A simple problem解题报告
- A - No Brainer解题报告
- E - A + B解题报告
- A - Lake Counting解题报告
- 解题报告:大牛也会不A题
- 大牛也会不A题(解题报告)
- CODEFORCES 534A 解题报告
- CODEFORCES 535A 解题报告
- 7/21 A 解题报告
- 随机文本生成与马尔科夫链
- html+qjquery 实现变色
- 子衿的事(64)
- dsadffff
- Ubuntu 10.10安装配置tftp服务
- A - SnowflakeSnowSnowflakes解题报告
- trac资料收集
- weblogic的boot.properties中密码破解
- 计算机四级网络工程师-补充复习
- java回调的理解
- 深入理解const char*p,char const*p,char *const p,const char **p,char const**p,char *const*p,char**const p
- 静态代理和动态模式
- row_number()、over()、insert into及group by 测试-sqlserver2008-201203230859
- 关闭杀不了的进程