当前位置: 首页 > news >正文

P8692 [蓝桥杯 2019 国 C] 数正方形:结论,组合数学

题目描述

在一个 N×NN×N 的点阵上,取其中 44 个点恰好组成一个正方形的 44 个顶点,一共有多少种不同的取法?

由于结果可能非常大,你只需要输出模 109+7109+7 的余数。

如上图所示的正方形都是合法的。

输入格式

输入包含一个整数 NN。

输出格式

输出一个整数代表答案。

输入输出样例

输入 #1复制

4

输出 #1复制

20

说明/提示

对于所有评测用例,2≤N≤1062≤N≤106。

蓝桥杯 2019 年国赛 C 组 G 题

做法

正方形的放置分为正放和斜放。

先讨论正放情况。假设我们正放的正方形边长为i,那么我们我们在n*n的正方形中有(n-i)*(n-i)种放置方式。(有n-i行和n-i列要选)。

再讨论斜放情况。有一个结论:i*i的正方形中有i-1个最大内接斜正方形。我们1到n中的正方形有(n-i)*(n-i)个,那么斜放的就有(i-1)*(n-i)*(n-i)个。一共有i*(n-i)*(n-i)个

#include<bits/stdc++.h>
#define int long long
#define endl '\n'
using namespace std;
const int N=1e5+10,mod=1e9+7;
int n;
void solved(){cin>>n;int ans=0;for(int i=1;i<=n;i++){//正方形的边长 ans=(ans+i*(n-i)%mod*(n-i)%mod)%mod;}cout<<ans<<endl;
}
signed main(){ios::sync_with_stdio(0);cin.tie(0);int t=1;//cin>>t;while(t--){solved();}
}

http://www.lryc.cn/news/488852.html

相关文章:

  • Spring Boot开发—— 实现订单号生成逻辑
  • React中Redux的基本用法
  • unity3d————基础篇小项目(设置界面)
  • 推荐几个 VSCode 流程图工具
  • 用java和redis实现考试成绩排行榜
  • hhdb数据库介绍(9-24)
  • HDMI数据传输三种使用场景
  • unigui 登陆界面
  • 无人机 PX4飞控 | CUAV 7-Nano 飞行控制器介绍与使用
  • 安装spark
  • 佛山三水戴尔R740服务器黄灯故障处理
  • 大学课程项目中的记忆深刻 Bug —— 一次意外的数组越界
  • html数据类型
  • Kotlin Multiplatform 未来将采用基于 JetBrains Fleet 定制的独立 IDE
  • Redis中常见的数据类型及其应用场景
  • 代理IP在后端开发中的应用与后端工程师的角色
  • 工作流和流程引擎有什么区别?
  • 【SpringBoot】27 拦截器
  • AI对开发者的影响,以及传统软件开发 与 AI参与的软件开发区别
  • HBase Java基础操作
  • 关于一次开源java spring快速开发平台项目RuoYi部署的记录
  • 【AI编程实战】安装Cursor并3分钟实现Chrome插件(保姆级)
  • 【Chatgpt】如何通过分层Prompt生成更加细致的图文内容
  • 中间件--laravel进阶篇
  • 【vue】vue中.sync修饰符如何使用--详细代码对比
  • repmgr安装及常用运维指令
  • RedHat系统配置静态IP
  • nvm和nrm的安装与使用
  • 10大核心应用场景,解锁AI检测系统的智能安全之道
  • 香豆烤馍:传统美食中的烟火记忆