2017年华中科技大学上机详解
来源:互联网 发布:网线 知乎 编辑:程序博客网 时间:2024/04/28 19:32
problem1:输出N个字符串的最长公共子串
这个题目只可以暴力做了。
#include <bits/stdc++.h>using namespace std;int main(){ int N; string s[25]; freopen("in.txt","r",stdin); while (scanf("%d",&N)==1){ getchar(); for (int i=0;i<N;i++) getline(cin,s[i]); for (int i=0;i<N;i++) cout<<s[i]<<endl; int len = s[0].length(); string ans; for (int i=0;i<len;i++) { for (int j=i;j<len;j++) { string sub = s[0].substr(i,j); for (int k=1;k<N;k++) { int tlen = s[k].length(); for (int ii=0;ii<tlen;ii++) { for (int jj=ii;jj<tlen;jj++) { string ssub = s[k].substr(ii,jj); //cout<<"check "<<sub<<" "<<ssub<<endl; if (sub==ssub&&ssub.length()>ans.length()){ cout<<"match "<<ssub<<endl; ans=ssub; cout<<ans<<endl; } } } } } } cout<<ans<<endl; } return 0;}
第二题:马遍历问题
#include <bits/stdc++.h>using namespace std;int cnt=0;int vis[5][5];int dx[]={1,2,2,1,-1,-2,-2,-1};int dy[]={2,1,-1,-2,-2,-1,1,2};int isok(int x,int y){ if (x<0||x>4||y<0||y>4) return 0; else return 1;}void dfs(int x,int y){ if (x==4&&y==4) cnt++; if (x>=5) return ; if (y>=5) return ; //if (vis[x][y]) return ; for (int i=0;i<8;i++) { int tx = x+dx[i]; int ty = y+dy[i]; if (vis[tx][ty]==0&&isok(tx,ty)) { vis[tx][ty]=1; dfs(tx,ty); vis[tx][ty]=0; } }}int main(){ memset(vis,0,sizeof(vis)); vis[0][0]=1; dfs(0,0); printf("%d\n",cnt); return 0;}
0 0
- 2017年华中科技大学上机详解
- 2005年华中科技大学计算机保研机试真题
- 2014年华中科技大学计算机研究生复试机试题目
- 2010年华中科技大学计算机研究生机试真题之六
- 题目1201:二叉排序树(2005年华中科技大学计算机保研机试真题)
- 2010年华中科技大学计算机研究生机试真题之六
- 2009年华中科技大学硕士生入学考试考生参加复试分数线基本要求
- 2010年华中科技大学计算机保研机试题(没做出来...)
- 题目1185:特殊排序(2003-2005年华中科技大学计算机研究生机试真题)
- 题目1205:N阶楼梯上楼问题(2008年华中科技大学计算机保研机试真题:递推求解)
- 帝国国王科技大学上机题解
- 2014年华为上机题目
- 2014年华为上机题目
- 2015年华为上机题
- 帝国国王科技大学上机题解(二)
- 2013年华为编程大赛上机题
- 2014年华为上机题及代码
- 2014年华为上机题一
- Ubuntu16.04快速搭建lnmp
- Java小项目中WEB-INF下jsp页面如何访问?
- matlab
- 安卓国际化
- 如何快速成为一名Linux运维工程师
- 2017年华中科技大学上机详解
- <操作系统>2. 操作系统结构
- Storm Trident
- [暴力] BZOJ 2901 矩阵求和
- 《TCP/IP详解 卷1:协议》第八章 Traceroute程序
- 三、Java类加载器
- Ubuntu安装搜狗输入法只需四步
- JAVASE(boolean 和Boolean 的区别)
- 关于网络字节序和主机字节序