CFgym:Database(字符串处理)
来源:互联网 发布:spss软件下载 官方 编辑:程序博客网 时间:2024/06/05 02:45
题意:给出n行m列的字符串表,找出其中的两行,其相同位置的纵坐标(列)的字符串一样,输出NO以及该两行和该两列,没有这样的情况就输出YES。
思路:给每个字符串一个值,考虑到m较小,可以从列里入手判断。
# include <iostream># include <cstdio># include <cstring># include <map>using namespace std;map<string, int>M;map<pair<int, int>, int>N;int n, m, a[10003][11], cnt=0;int fun(string s){ if(M.count(s)) return M[s]; M[s] = ++cnt; return cnt;}int main(){ freopen("database.in", "r", stdin); freopen("database.out", "w", stdout); scanf("%d%d",&n,&m); char c = getchar(); for(int i=0; i<n; ++i) { int j=0; string t; while(c = getchar()) { if(c == '\n') { a[i][j] = fun(t); break; } else if(c != ',') t += c; else { a[i][j++] = fun(t); t.clear(); } } } for(int i=0; i<m; ++i) for(int j=i+1; j<m; ++j) { for(int k=0; k<n; ++k) { pair<int,int>p = make_pair(a[k][i], a[k][j]); if(N.count(p)) { printf("NO\n%d %d\n%d %d\n",N[p]+1, k+1, i+1, j+1); return 0; } N[p] = k; } N.clear(); } puts("YES"); return 0;}
0 0
- CFgym:Database(字符串处理)
- CFgym:Palindromization(字符串Hash)
- CFgym:Castle(KMP)
- CFGym
- CFGym
- CFGym
- CFGym
- CFGym
- CFgym:Digits Permutation(DFS)
- CFgym:Good morning!(dfs)
- CFgym:Hidden Anagrams(Hash)
- CFgym:Bonuses and Teleports(贪心)
- CFgym:Of Zorcs and Axes(贪心)
- CFgym:Treasure Island(搜索 & 思维)
- CFgym: Laying Cables(单调栈)
- CFgym:Sky Tax(DFS序 & 树)
- CFgym:Painting the Wall(BFS)
- CFgym:Magic Artifact(概率期望 & 思维)
- Koa学习笔记
- 当类对象作为成员看初始化列表的意义
- 【小型系统】抽奖系统-使用Java Swing完成
- 二叉树总结
- 教你如何迅速秒杀掉:99%的海量数据处理面试题
- CFgym:Database(字符串处理)
- lightoj 1128 倍增法+dp
- 使用Meta,试做网页,3秒后跳转到指定页面
- hdu 3584 Cube(三维树状数组)
- requests+beautifulsoup4 爬虫实战
- 【JVM】JVM系列之垃圾回收(二)
- 内部类
- 硅谷未来科技与创业企业
- Web Service系列之实例之spyne