WA题集
2024-10-16 01:54:08
#include <iostream> #include <cstring> #include <cstdio> #include <algorithm> #include <cmath> using namespace std; + ; struct points { double x,y; }; points point[MAX]; double d[MAX][MAX]; double dist(int a, int b) { return sqrt( (point[a].x - point[b].x) * (point[a].x - point[b].x) + (point[a].y - point[b].y) * (point[a].y - point[b].y)); } int main() { int n; while(scanf("%d", &n) != EOF) { ; i <= n; i++) scanf("%lf%lf", &point[i].x, &point[i].y); ; i < n - ; i++) d[n - ][i] = dist(n - , n) + dist(i, n); ; i > ; i--) { ; j < i; j++) { ][j] + dist(i, i + ) - d[i + ][i] - dist(j, i + ) > 0.00001) d[i][j] = d[i + ][j] + dist(i, i + ); else d[i][j] = d[i + ][i] + dist(j, i + ); } } printf(][] + dist(,)); } ; }
UVA1347紫书dp
zoj1163http://blog.csdn.net/cherry_sun/article/details/6245208
#include <iostream> #include <cstring> #include <algorithm> #include <map> #include <cstdio> using namespace std; map<string,int> color; ][],cnt[],sum[]; + ]; int main() { int n,m; while(scanf("%d%d", &n, &m) != EOF) { && m == ) break; ]; ; i <= n; i++) { scanf("%s", temp); color[temp] = i; } int x; memset(cnt, , sizeof(cnt)); memset(sum, , sizeof(sum)); memset(ans, , sizeof(ans)); ; i <= m; i++) { scanf("%d%s",&x, temp); cloth[ color[temp] ][ cnt[ color[temp] ]++ ] = x; } ; i <= n; i++) { ; j < cnt[i]; j++) { sum[i] += cloth[i][j]; } } ; ; i <= n; i++) { ; ; j < cnt[i]; j++) { for(int k = v; k >= cloth[i][j]; k--) { ans[k] = max(ans[k], ans[k - cloth[i][j]] + cloth[i][j]); } } all += sum[i] - ans[v]; } printf("%d\n",all); } ; }
UVA类似于8皇后问题
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; ; int g[MAX][MAX],vis[MAX][MAX*MAX]; int n,m,ans,t; void dfs(int x,int cnt) { ; for(int i = x; i < n; i++) { ; j < m; j++) { if(g[i][j]) { ][j] == && vis[][i + j] == && vis[][i - j + t] == ) { flag = ; break; } } } ) { break; } } ) { ans =min(ans,cnt); return ; } ; i < m; i++) { if(g[x][i]) { ][i] == && vis[][x + i] == && vis[][x - i + t] == ) { vis[][i] = vis[][x + i] = vis[][x - i + t] = ; dfs(x + , cnt + ); vis[][i] = vis[][x + i] = vis[][x - i + t] = ; } } } } int main() { ; while(scanf("%d", &n) != EOF) { ) break; scanf("%d", &m); t = max(n,m); getchar(); memset(vis,,sizeof(vis)); memset(g,,sizeof(g)); char ch; ; i < n; i++) { ; j < m; j++) { scanf("%c",&ch); if(ch == 'X') g[i][j] = ; } getchar(); } ans = ; dfs(,); printf("Case %d: %d\n",num++,ans); } ; }
POJ 3026 Borg Maze
http://poj.org/problem?id=3026
#include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <cstring> using namespace std; typedef pair<int,int> P; ; ][]; ][],vis[][],dis[][],edge[][]; int t,row,col,num; ][]={{,},{,},{,-},{-,} }; void bfs(int x,int y) { queue<P> q; P point; point.first = x; point.second = y; memset(vis,,sizeof(vis)); memset(dis,,sizeof(dis)); vis[x][y] = ; q.push(point); while(q.size()) { P temp; temp = q.front(); q.pop(); if( node[temp.first][temp.second] ) { // cout<<node[x][y] <<" "<<node[point.first][point.second]<<endl; edge[ node[x][y] ][ node[temp.first][temp.second] ] = dis[temp.first][temp.second]; } ; i < ; i++) { ]; ]; && fy >= && fx < row && fy < col) { && g[fx][fy] != '#') { dis[fx][fy] = dis[temp.first][temp.second] + ; vis[fx][fy] = ; point.first = fx; point.second = fy; q.push(point); } } } } } void prime() { ]; ]; ; i < num; i++) { v[i] = false; } ; i < num; i++) s[i] = edge[][i]; v[] = true; ; ; i < num; i++) { int pos, minn = INF; ; j < num; j++) { if(v[j] == false && s[j] < minn) { minn = s[j]; pos = j; } } sum += minn; v[pos] = true; ; j < num; j++) { if(s[j] > edge[pos][j]) s[j] = edge[pos][j]; } } printf("%d\n",sum); } int main() { scanf("%d", &t); while(t--) { scanf("%d%d", &col,&row); getchar(); num = ; memset(node,,sizeof(node)); memset(edge,,sizeof(edge)); ; i < row; i ++) { ; j < col; j++) { scanf("%c", &g[i][j]); if(g[i][j] == 'A' || g[i][j] == 'S') node[i][j] = num++; } getchar(); } ; i < row; i++) { ; j < col; j++) if(node[i][j]) bfs(i,j); } prime(); } ; }
POJ2253
#include <iostream> #include <cstring> #include <cstdio> #include <algorithm> #include <cmath> using namespace std; + ; << ; struct Node { int x,y; }; Node point[MAX]; int N; double path[MAX][MAX],dist[MAX],ans; int vis[MAX]; void prime() { memset(vis,,sizeof(vis)); ; i <= N; i++) dist[i] = path[][i]; vis[] = ; dist[] = ; ; ; i < N; i++) { double minn = INF; ; j <= N; j++) { && dist[j] < minn) { minn = dist[j]; pos = j; } } vis[pos] = ; dist[pos] = minn; ) return; if(ans < minn) ans = minn; ; j <= N; j++) { ) dist[j] = dist[pos] + path[pos][j]; } } } int main() { ; while(scanf("%d", &N) != EOF && N) { ; i <= N; i++) { scanf("%d%d",&point[i].x,&point[i].y); } ; i <= N; i++) { ; j <= N; j++) { double x = point[i].x - point[j].x; double y = point[i].y - point[j].y; path[i][j] = sqrt(x * x + y * y); } } ans = ; prime(); printf("Scenario #%d\n",++t); if(ans) printf("Frog Distance = %0.3lf\n",ans); else printf(][]); printf("\n"); } ; }
最新文章
- Work around by "; Due to heavy load, the latest workflow operation has been queued. "; 分类: Sharepoint 2015-07-08 00:19 3人阅读 评论(0) 收藏
- String类常用方法小节
- web页面实现指定区域打印功能
- PHP局部变量与全局变量
- WPF:窗体置顶
- redis的lua使用(EVALSHA)
- wifi reaver
- SQL列数据转换为字符串
- c# 循环语句练习题;
- ASP.NET 应用程序(Application)生命周期概述
- Android总结的基本机制监控事件
- Python3基础 list(enumerate()) 将一个列表的每一个元素转换成 带索引值的元组
- leetcode算法:Next Greater Element I
- HashMap?面试?我是谁?我在哪
- os模块(操作系统)
- STM32 USB-三个HID-interface 复合(组合)设备的代码实现-基于固件库(原创)
- VC6.0学习C语言入门SDK
- JAVA并发编程——守护线程(Daemon Thread)
- List<;T>;用法
- hdu 3068 Manacher算法