zoukankan      html  css  js  c++  java
  • POJ 2265 Bee Maja (找规律)

    题目链接

    题意 : 给你两个蜂巢的编号,给你一个的编号让你输出在另外一个蜂巢中对应的编号。

    思路 : 先将蜂巢分层,第一层一个数,第二层6个数,第三层12个数…………然后用公式表示出第n层的最后一个数是多少,下图中竖着的是x坐标,斜着的是y坐标,往左横坐标+1,往右横坐标-1,以斜线为准往上纵坐标-1,往下纵坐标+1,(1,1)也就是18是第三圈的第一个数,(2,1)也就是20是第四圈的第一个数。

     1 #include <cstdio>
     2 #include <cstring>
     3 #include <iostream>
     4 #include <cstdlib>
     5 
     6 using namespace std ;
     7 
     8 int main()
     9 {
    10     int a ;
    11     while(scanf("%d",&a) !=EOF)
    12     {
    13         if(a == 1)
    14         {
    15             printf("0 0
    ") ;
    16             continue ;
    17         }
    18         int n = 0;
    19         while(3 * (n-1) * n + 1 < a)//3 * (n-1) * n + 1表示第n圈的最后一个数是多少
    20             n++;//找到该数属于第几圈
    21         n--;
    22         a -= 3*(n-1)*n+1;
    23         int x , y;
    24         //分为6个边,每个边上n个数,可以根据题目里的两个图找找规律,看看每条边上的xy的规律是多少
    25         if(a<=n)
    26         {
    27             x = n-a;
    28             y = a;
    29         }
    30         else if(a>n&&a<=2*n)
    31         {
    32             x = n-a;
    33             y = n;
    34         }
    35         else if(a>2*n&&a<=3*n)
    36         {
    37             x = -n;
    38             y = 3*n-a;
    39         }
    40         else if(a>3*n&&a<=4*n)
    41         {
    42             x = a-4*n;
    43             y = 3*n-a;
    44         }
    45         else if(a>4*n&&a<=5*n)
    46         {
    47             x = a-4*n;
    48             y = -n;
    49         }
    50         else
    51         {
    52             x = n;
    53             y = a-6*n;
    54         }
    55         printf("%d %d
    ",x,y) ;
    56     }
    57     return 0 ;
    58 }
    View Code
  • 相关阅读:
    Python制作天气查询软件【python实战必学】
    Python妹子图爬虫实战项目【新手必学】
    Python超级无敌技巧分享
    PlaySound使用进阶
    【】2019
    【】风之忧伤
    delete[]和delete
    《windows程序设计 第五版》实例
    playsound函数用法
    【Python入门自学笔记专辑】——Python跳转语句和循环使用范围
  • 原文地址:https://www.cnblogs.com/luyingfeng/p/3919974.html
Copyright © 2011-2022 走看看