1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <iostream> 4 #include <algorithm> 5 #include <vector> 6 using namespace std ; 7 typedef pair < int , int > ii ; 8 int main () 9 { 10 int n ; 11 while ( cin >> n ) 12 { 13 vector < ii > p ; 14 int ans = 0 ; 15 for ( int y = n + 1 ; y <= 2 * n ; y ++) 16 { 17 18 if (( n * y )%( y - n )== 0 ) 19 ...
解題: 利用Floyd Warshall找出起點至任意點的距離,再找最大值就是答案 (p.s.和UVa 11463很像) Code: #include<stdio.h> #include<stdlib.h> #include<iostream> #include<algorithm> #include<string.h> #define INF 100000 using namespace std ; int dis [ 105 ][ 105 ]; int initial ( int n ) { for ( int i = 1 ; i <= n ; i ++) for ( int j = 1 ; j <= n ; j ++) dis [ i ][ j ]=( i == j )? 0 : INF ; } int Floyd ( int n ) { for ( int k = 1 ; k <= n ; k ++) for ( int i = 1 ; i <= n ; i ++) for ( int j = 1 ; j <= n ; j ++) { if ( dis [ i ][ k ]+ dis [ k ][ j ]< dis [ i ][ j ]) ...
1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <algorithm> 4 #include <iostream> 5 #include <math.h> 6 using namespace std ; 7 int main () 8 { 9 int n , d , cas = 1 ; 10 while ( cin >> n >> d && n + d ) 11 { 12 pair < double , double > p [ 1005 ]; 13 for ( int i = 0 ; i < n ; i ++) 14 { 15 16 double h ; 17 double x , y ; 18 ...
留言
張貼留言