蓝桥杯备战 每日一题 (4)

题目地址

首先我们要有一个知识储备

1 加法:(a+b)%m=(a%m+b%m)%m

2 减法:(a-b)%m=(a%m-b%m)%m

3 乘法:a*b%m=(a%m)*(b%m)%m

我们可以每次计算就可以取余一次,这样就保证了最后取余的结果和一起相加再取余的结果一样

然后这个题目要怎么分析呢,首先的话 边长 为 n - 1 ,因为每边都是 n 个点,这是要注意的地方,然后我们每次只考了边长为 i 的正方形,发现有 n - i 个,包括自身以外,还有 i- 1 个斜着的正方形

代码如下

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int main()
{
	ll n;
	cin >> n;
	ll ans = 0;
	for (ll i = 1; i < n; i++) {
		ans += i * (n - i) * (n - i);
		ans %= 1000000007;
	}
	cout << ans;
	return 0;
}
相关推荐
小袁顶风作案30 分钟前
leetcode力扣——135.分发糖果
算法·leetcode·职场和发展
我命由我1234543 分钟前
开发中的英语积累 P25:Axis、Stroke、Corner、Interceptor、Declared、Internal
经验分享·笔记·学习·职场和发展·求职招聘·职场发展·学习方法
_OP_CHEN2 小时前
【算法基础篇】(四十一)数论之约数问题终极攻略:从求单个约数到批量统计
c++·算法·蓝桥杯·数论·约数·算法竞赛·acm/icpc
橘颂TA2 小时前
【剑斩OFFER】算法的暴力美学——面试题 01.02 :判定是否互为字符串重排
c++·算法·leetcode·职场和发展·结构与算法
ada7_10 小时前
LeetCode(python)78.子集
开发语言·数据结构·python·算法·leetcode·职场和发展
翔云12345617 小时前
做事情的正确方式
程序人生·职场和发展·学习方法
天才测试猿17 小时前
Selenium测试框架快速搭建详解
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
不爱编程的小陈19 小时前
C/C++每日面试题
面试·职场和发展·1024程序员节
小谢啥都不会1 天前
蓝桥杯(三)——闫氏DP
python·蓝桥杯
最爱吃咸鸭蛋1 天前
LeetCode 11
算法·leetcode·职场和发展