蓝桥杯备战 每日一题 (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;
}
相关推荐
剪一朵云爱着1 天前
力扣81. 搜索旋转排序数组 II
算法·leetcode·职场和发展
小欣加油1 天前
leetcode 946 验证栈序列
c++·算法·leetcode·职场和发展
测试19981 天前
Appium使用指南与自动化测试案例详解
自动化测试·软件测试·python·测试工具·职场和发展·appium·测试用例
夏鹏今天学习了吗1 天前
【LeetCode热题100(66/100)】寻找两个正序数组的中位数
算法·leetcode·职场和发展
墨染点香1 天前
LeetCode 刷题【151. 反转字符串中的单词】
算法·leetcode·职场和发展
小毅&Nora2 天前
【后端】【面试】 ③ PostgreSQL高级面试题(含答案与实战案例)
postgresql·面试·职场和发展
小欣加油2 天前
leetcode 474 一和零
c++·算法·leetcode·职场和发展·动态规划
旭意2 天前
数据结构顺序表
数据结构·c++·蓝桥杯
代码程序猿RIP2 天前
【C 语言面试】高频考点深度解析
java·面试·职场和发展