fork download
  1. #include<bits/stdc++.h>
  2. #define T int t;cin >>t;while(t--)
  3. #define fast ios::sync_with_stdio(false); cin.tie(0); cout.tie(0)
  4. #define ll long long
  5. #define lll unsigned long long
  6. using namespace std;
  7. int n,m,x,y,mx=0;
  8. vector<pair<int,int>>arr[150];
  9. void DFS(int i,int j,char c,int cnt){
  10. if (cnt>mx) mx=cnt;
  11. for (auto I:arr[(int)c+1]){
  12. int k = abs(I.first-i) , kk = abs(I.second-j);
  13. if (k<=1&&kk<=1) DFS(I.first,I.second,c+1,cnt+1);
  14. }
  15. }
  16. void Abady(){
  17. int k=1;
  18. while(cin >> n >> m){
  19. if (n==0&&m==0) break;
  20. for (int i=0;i<n;i++){
  21. string s; cin >> s;
  22. for (int j=0;j<m;j++){
  23. int k = s[j];
  24. arr[k].push_back({i,j});
  25. }
  26. }
  27. for (auto I:arr[65]){
  28. DFS(I.first,I.second,'A',1);
  29. }
  30. cout << "Case " << k++ << ": " << mx << endl;
  31. mx=0;
  32. for (int i='A';i<='Z';i++) arr[i].clear();
  33. }
  34. }
  35. int main(){
  36. fast;
  37. Abady();
  38. }
  39.  
Success #stdin #stdout 0.01s 5288KB
stdin
Standard input is empty
stdout
Standard output is empty