ZOJ 3935 2016
2016-04-16 10:27
260 查看
In mathematics, a polygonal number is a number represented as dots or pebbles arranged in the shape of a regular polygon. The dots are thought of as alphas (units). These are one type of 2-dimensional figurate numbers. The following picture shows how triangular numbers, square numbers, pentagonal numbers and hexagonal numbers represented as dots arranged in the shape of corresponding regular polygon.
Polygonal Numbers: Triangular, Square, Pentagonal and Hexagonal numbers
2016 is not only a leap year but also a triangular and hexagonal year. If you are patient enough, you can count the number of the dots in the left triangle or in the right hexagon in the following picture. The number of dots in each shape is 2016.
2016 is a triangular-hexagonal-leap year
Therefore, 2016 is a triangular-hexagonal-leap year. The previous triangular-hexagonal-leap year is 1540 and the next is 2556. So living to see 2016 is very rare experience.
You task is to list the triangular-hexagonal-leap years from 2016 to 990528. 990528 is also a triangular-hexagonal-leap year.
Input
This problem has no input.
Output
Please print each triangular-hexagonal-leap year in increasing order.
For example, if you are asked to list the triangular-hexagonal-leap years from 780 to 2556, the output should be:
780
1128
1540
2016
2556
Sample Output
2016
2556
… <– some lines are skipped
990528
Polygonal Numbers: Triangular, Square, Pentagonal and Hexagonal numbers
2016 is not only a leap year but also a triangular and hexagonal year. If you are patient enough, you can count the number of the dots in the left triangle or in the right hexagon in the following picture. The number of dots in each shape is 2016.
2016 is a triangular-hexagonal-leap year
Therefore, 2016 is a triangular-hexagonal-leap year. The previous triangular-hexagonal-leap year is 1540 and the next is 2556. So living to see 2016 is very rare experience.
You task is to list the triangular-hexagonal-leap years from 2016 to 990528. 990528 is also a triangular-hexagonal-leap year.
Input
This problem has no input.
Output
Please print each triangular-hexagonal-leap year in increasing order.
For example, if you are asked to list the triangular-hexagonal-leap years from 780 to 2556, the output should be:
780
1128
1540
2016
2556
Sample Output
2016
2556
… <– some lines are skipped
990528
#include <iostream> #include <string.h> #include <stdlib.h> #include <stdio.h> #include <algorithm> #include <math.h> #include <queue> using namespace std; int a[10005]; int b[10005]; int judge(int x) { if(x%4==0&&x%100!=0||x%400==0) return 1; else return 0; } int main() { for(int i=1;i<=10000;i++) { a[i]=(i*(i+1))/2; } for(int i=1;i<=10000;i++) { b[i]=i*(2*i-1); } int k=0; for(int i=63;i<=10000;i++) { for(int j=32;j<=10000;j++) { if(a[i]==b[j]&&judge(a[i])) { printf("%d\n",a[i]); if(a[i]==990528) k=1; break; } } if(k) break; } return 0; }
相关文章推荐
- ZOJ 3935 2016
- linux shell ls -1 列显示文件
- 用JS获取地址栏参数的方法(超级简单)
- poj1328 Radar Installation 贪心
- 在php中json_encode与json_decode的使用方法
- iPhone 行/水货、黑机、妖机、卡贴机科普。
- 重载hash与isEqual:方法
- 键盘事件
- bfs
- 最新龙芯 3A2000/3B2000 已得到 Linux 内核的官方支持
- 找寻路径从根root到节点p的路径函数
- ZOJ 3932 Handshakes
- LeetCode #6 ZigZag Conversion C# Solution
- ZOJ 3932 Handshakes
- SharePoint 2013 网站搜索规则的使用示例
- Caffe 深度学习框架上手教程
- 使用JSSDK集成微信分享遇到的一些坑
- 字节流与字符流的区别详解
- 代码托管和服务功能多元化,看码客帮如何做软件众包
- 整合springMVC,Mybatis的Maven项目框架