程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> HDU 4584 Building bridges

HDU 4584 Building bridges

編輯:C++入門知識

 
#include <iostream>   
#include <algorithm>   
#include <cmath>   
#include <cstdio>   
#include <cstdlib>   
#include <cstring>   
#include <string>   
#include <vector>   
#include <set>   
#include <queue>   
#include <stack>   
#include <climits>//形如INT_MAX一類的   
#define MAX 100005   
#define INF 0x7FFFFFFF   
#define REP(i,s,t) for(int i=(s);i<=(t);++i)   
#define ll long long   
#define mem(a,b) memset(a,b,sizeof(a))   
#define mp(a,b) make_pair(a,b)   
#define L(x) x<<1   
#define R(x) x<<1|1   
# define eps 1e-5   
//#pragma comment(linker, "/STACK:36777216") ///傳說中的外掛   
using namespace std;  
  
int n,m;  
char map[44][44];  
  
int main(){  
    while(cin >> n >> m) {  
        if(n == 0 && m == 0) break;  
        for(int i=0; i<n; i++) cin >> map[i];  
        int x1,y1,x2,y2;  
        int tmp = 111111111;  
        for(int i=0; i<n; i++) {  
            for(int j=0; j<m; j++) {  
                if(map[i][j] == 'H') {  
                    for(int k=0; k<n; k++) {  
                        for(int l=0; l<m; l++) {  
                            if(map[k][l] == 'C') {  
                                int t = abs(i - k) + abs(j - l);  
                                if(tmp > t) {  
                                    tmp = t;  
                                    x1 = i; y1 = j;  
                                    x2 = k; y2 = l;  
                                }  
                            }  
                        }  
                    }  
                }  
            }  
        }  
        printf("%d %d %d %d\n",x1,y1,x2,y2);  
    }  
    return 0;  
}  

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved