uva--188+模拟
来源:互联网 发布:医学软件大全下载 编辑:程序博客网 时间:2024/05/16 18:48
这道题的难点主要是在题意的理解,理解题意以后的话就完全可以按照题目给定的算法去模拟了。然后值得注意的是C的初值,原先我认为需要枚举C的初值
后面看了一下别人的题解发现可以直接取0.
代码如下:
#include<iostream>#include<cstdio>#include<cstring>using namespace std;int f(char str[20]){ int len=strlen(str); int sum=0; for(int i=0;i<len;i++) sum=sum*32+(str[i]-'a'+1); return sum;}int w[100],n;int solve(int c){ int i,j,k; for(i=0;i<n;i++) for(j=i+1;j<n;j++) if(((c/w[i])%n)==((c/w[j])%n)) return solve(min((c/w[i]+1)*w[i],(c/w[j]+1)*w[j])); return c;}int main(){ int i,k,j; char str[100]; while(gets(str)) { char s[100],ch[100]; strcpy(s,str); j=0; n=0; int len=strlen(str); for(i=0;i<len;) { while(str[i]>='a'&&str[i]<='z') { ch[j++]=str[i]; i++; } if(str[i]==' '||i==len) { ch[j]='\0'; w[n++]=f(ch); while(str[i]==' ') i++; j=0; } } int ans=solve(0); printf("%s\n%d\n\n",s,ans); } return 0;}
0 0
- uva--188+模拟
- uva 188 - Perfect Hash 模拟
- UVA 10196 模拟题。。
- UVa 100 简单模拟
- UVa 602 简单模拟
- Uva 11039(排序+模拟)
- UVA 11039 模拟
- UVa 10189 Minesweeper (模拟)
- uva 11995 STL模拟
- uva 10205 模拟
- UVA 514 - Rails(模拟)
- uva 502(模拟)
- UVA Palindromes(模拟)
- UVA Artificial Intelligence?(模拟)
- UVA 401-Palindromes(模拟)
- UVa 227 模拟
- UVa 340 模拟
- UVa 1589 da模拟!!
- linux用smb挂载windows共享文件,…
- 用netstat查看网络状态详解
- 模板方法模式
- Struts2-----2、Struts2的下载和安装
- sqoop导入数据到hive
- uva--188+模拟
- UILabel sizeWithFont:方法使用明细
- Eclipse安装Drools插件
- linux下静态路由修改命令
- SetFont()修改字体大小及样式的问题
- Vmware虚拟网络详解(太详细了,讲的很浅显易懂。。。。。。。。。。)
- 黑马程序员-java基础之网络编程
- wordpress date_i18n 日期格式化
- C++编程学习50个经典网站 强力推荐