摆方格
来源:互联网 发布:网络用语404是什么梗 编辑:程序博客网 时间:2024/04/25 16:58
摆方格
题目描述
给你一个n*n的方格,每个方格里的数必须连续摆放如下:
1
2
4
3
下图为不连续的,请输出从左上角到右下角的对角线上的最大和
1
3
4
2
输入
输入包含多组测试数据。
每一行包括一个数据n,表示n*n的方格(保证所有数据在2^64范围内且n>0)输出
每行输出占一行,输出最大的对角线之和。样例输入
1
2
3
样例输出
1
6
19
来源
NYOJ 虽然在南阳里分类是贪心,但是其实就是找规律。
n=1
1
n=2
2 1
3 4 结果:[4 + 2]
n=3
3 2 1
4 7 8
5 6 9 结果:[9+ 7+ 3(7/2)]
n=4
9 10 15 16
8 11 14 1
7 12 13 2
6 5 4 3 结果:[16+ 14 +12 +6(12/2)]
n=5
15 16 17 18 19
14 13 22 21 20
11 12 23 2 1
10 25 24 3 4
9 8 7 6 5 结果:[ 25+ 23 + 21 + 19 +9(19/2)]#include<stdio.h>int main(){long long n;while(scanf("%lld",&n)!=EOF){long long m=n*n;long long sum=0;for(long long i=0;i<n-1;i++){sum+=m;m-=2;}sum+=m/2;//由于多减了2,所以结果要加一 printf("%lld\n",sum+1);}}
给你一个n*n的方格,每个方格里的数必须连续摆放如下:
1
2
4
3
下图为不连续的,请输出从左上角到右下角的对角线上的最大和
1
3
4
2
每一行包括一个数据n,表示n*n的方格(保证所有数据在2^64范围内且n>0)
1
n=2
2 1
3 4
n=3
3 2 1
4 7 8
5 6 9
n=4
9 10 15 16
8 11 14 1
7 12 13 2
6 5 4 3
n=5
15 16 17 18 19
14 13 22 21 20
11 12 23 2 1
10 25 24 3 4
9 8 7 6 5
#include<stdio.h>int main(){long long n;while(scanf("%lld",&n)!=EOF){long long m=n*n;long long sum=0;for(long long i=0;i<n-1;i++){sum+=m;m-=2;}sum+=m/2;//由于多减了2,所以结果要加一 printf("%lld\n",sum+1);}}
阅读全文
0 0
- 摆方格
- 摆方格
- 摆方格
- 摆方格
- 摆方格
- nyoj 摆方格
- NYOJ 1087 摆方格
- nyoj 1087 摆方格
- 摆方格(数学)
- NYOJ 1087 摆方格
- NYOJ 1081 摆方格
- 摆方格 (数学规律)
- NYOJ题目1087-摆方格
- nyoj1087摆方格(数学规律题)
- nyoj 摆方格 1087 (数学规律)
- nyoj--1087--摆方格(规律)
- NYOJ 1087 摆方格 贪心算法
- 摆花
- C# Action和Func委托
- Win10开机按F8进不了安全模式没反应 Win10开机按F8怎么无法进入安全模式
- DOCTYPE 作用
- Coursera机器学习笔记(week2)
- STL学习之十一:容器值(value)语意
- 摆方格
- The markup in the document following the root element must be well-formed.
- dubbox 2.8.4的配置和使用
- openWrt patch 打补丁
- 基于kvm+ovs+ryu构建一个SDN环境
- Retrofit 源码分析流程
- 虚拟机管理和虚拟机快照
- HTML5本地存储
- TCP/TP-数据链路层