位运算的使用(Floyd)
来源:互联网 发布:魔方虚拟光驱软件 编辑:程序博客网 时间:2024/06/05 19:37
题目:点击打开链接
代码:
#include<stdio.h>#include<string.h>int a, q[201][201];char d[30];int main(){int i, j, k, b, c; while(~scanf("%d",&a)) { if(a==0) return 0; memset(q,0,sizeof(q)); while(~scanf("%d%d",&b,&c)) { if(b==0 && c==0) break; scanf("%s",d); for(i=0; d[i]; i++) { q[b][c] |= 1<<(d[i]-'a'); } } for(k=1; k<=a; k++) for(i=1; i<=a; i++) {if (q[i][k] != 0) {for(j=1; j<=a; j++)q[i][j] |= (q[i][k] & q[k][j]); }} while(~scanf("%d%d",&b,&c)) { if(b==0 && c==0) break;if (q[b][c] == 0)putchar('-'); else {for(i=0; i<26; i++) {if (q[b][c] & 1<<i)putchar('a'+i);} } putchar('\n'); } putchar('\n'); } return 0;}上面用了状态压缩,就说是管总结出来的,他说poj1077就是得用状态压缩,但是那道题我并不会做,,,,,,去看看。
0 0
- 位运算的使用(Floyd)
- 位运算的使用
- 位运算的使用
- POJ2570 二进制,位运算,Floyd
- POJ 2570Fiber Network(Floyd+位运算)
- 各种位运算的使用
- 位运算的实际使用
- 位运算符的使用
- 位运算的巧妙使用
- 数据结构-位运算的使用
- 位运算的使用技巧
- zoj 1967 Fiber Network(位运算&&FLOYD)
- POJ--2570--Fiber Network【floyd+位运算】
- poj 2570 floyd 二进制+位运算
- [floyd]poj 2570 fiber network #floyd+位运算
- 位运算---只使用位运算实现整数的加减乘除
- C语言位运算符的使用
- 使用位运算的数值转换程序
- ios c++版本适配ipv6
- [二分图匹配]poj2446__Chessboard
- 判断手机号码是否合法(完整实现程序)
- 设计一个类只能生成该类的一个实例
- Install Chrome-google in Centos7
- 位运算的使用(Floyd)
- VC 根据文件路径获取设备路径及设备名
- 处理C++源代码的程序(1)
- 安装SQL Server 2012 出现 Error code 0x858C001B报错
- Node.js学习2-NPM介绍、使用
- word2vect训练
- 数据库操作
- Hibernate注解使用以及Spring整合
- 八进制转换