螺旋队列算法分析

http://blog.csdn.net/yhmhappy2006/article/details/2934435

 

 

  
  
  
  
  1. // 
  2. //  main.c 
  3. //  MyCTest 
  4. // 
  5. //  Created by gloria on 12-12-30. 
  6. //  Copyright (c) 2012年 gloria. All rights reserved. 
  7. // 
  8.  
  9. #include <stdio.h> 
  10. #define max(a,b)(a>b?a:b) 
  11.  
  12. int main(int argc, const char * argv[]) 
  13. /* 螺旋队列 */ 
  14. #if 1       
  15.     int x=0,y=0;//x,y坐标 
  16.     int maxnum=0,max_xy=0,answer=0; 
  17.     //maxnum:坐标所在圈的最大数,max_xy:xy中的最大值,answer坐标对应的数 
  18.     while (1) { 
  19.         printf("start\n"); 
  20.         scanf("%d,%d",&x,&y); 
  21.         getchar(); 
  22.         max_xy=max(x,y); 
  23.         maxnum=(max_xy*2+1)*(max_xy*2+1); 
  24.         printf("maxxy=%d,maxnum=%d\n",max_xy,maxnum); 
  25.         if(x==y){ 
  26.             answer=maxnum; 
  27.         } 
  28.         else if(y==max_xy){ 
  29.             answer=maxnum+(-5*y-x); 
  30.         } 
  31.         else if(x==-max_xy){ 
  32.             answer=maxnum+(3*x-y); 
  33.         } 
  34.         else if(y==-max_xy){ 
  35.             answer=maxnum+(x+y); 
  36.         } 
  37.         else { 
  38.             answer=maxnum+(-7*x+y); 
  39.         } 
  40.         printf("answer=%d\n",answer); 
  41.     } 
  42. #endif 
  43.     return 0; 

 

你可能感兴趣的:(螺旋队列,算法分析)