首页 > 其他分享 >牛客周赛 Round 3

牛客周赛 Round 3

时间:2024-06-02 20:44:54浏览次数:11  
标签:10 cnt 取模 周赛 矩阵 牛客 游游 权值 Round

D 游游的矩阵权值

题目描述

游游定义一个矩阵权值为:每一对相邻元素之和的总和。
例如,对于矩阵:
1 2
3 4
它的权值是(1+2)+(1+3)+(2+4)+(3+4)=3+4+6+7=20。
游游希望你构造一个\(n*n\)的矩阵,矩阵中的元素为1到\(n^2\)且每个数恰好出现一次。她希望最终矩阵的权值尽可能大。你能帮帮她吗?由于矩阵可能过大,你不需要输出最终的矩阵,只需要输出这个最大权值即可。答案对\(10^9+7\)取模。

输入描述

一个正整数\(n\)。
\(2\leq n \leq 10^9\)

输出描述

矩阵的最大权值,对\(10^9+7\)取模。

解题思路

显然只要越大的数字越里面总和就越大,因此只需要统计一下所有的数字出现情况就行。
四个角落的数只会加2次,边上的数都会加3次,里面的数都是4次,容斥一下取模便可以得到答案。

代码实现

n=int(input())
cnt=4*(n-1)
ans=(1+n*n)*n*n*2-(1+cnt)*cnt//2-10
print(ans%int(1e9+7))

标签:10,cnt,取模,周赛,矩阵,牛客,游游,权值,Round
From: https://www.cnblogs.com/udiandianis/p/18227571

相关文章

  • 牛客周赛 Round 1
    D游游的9的倍数题目描述游游拿到了一个数字串,她想取一个该数字串的子序列(子序列在原串中可以不连续),使得该子序列是9的倍数。子序列可以包含前导零。游游想知道,一共能取多少个合法的子序列?答案请对\(10^9+7\)取模。我们定义,若两个子序列在原串中的位置不同,则认为它们不同。......
  • 【leetcode】——第 400 场周赛,2题选手签个到
    第一题:100307.候诊室中的最少椅子数给你一个字符串 s,模拟每秒钟的事件 i:如果 s[i]=='E',表示有一位顾客进入候诊室并占用一把椅子。如果 s[i]=='L',表示有一位顾客离开候诊室,从而释放一把椅子。返回保证每位进入候诊室的顾客都能有椅子坐的 最少 椅子数,假设候诊室......
  • 牛客网刷题 | BC110 X形图案
    目前主要分为三个专栏,后续还会添加:    专栏如下:          C语言刷题解析    C语言系列文章    我的成长经历感谢阅读!初来乍到,如有错误请指出,感谢!描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组......
  • 牛客网刷题 | BC111 空心正方形图案
    目前主要分为三个专栏,后续还会添加:    专栏如下:          C语言刷题解析    C语言系列文章    我的成长经历感谢阅读!初来乍到,如有错误请指出,感谢!描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组......
  • 牛客网刷题 | BC107 箭形图案
    目前主要分为三个专栏,后续还会添加:    专栏如下:          C语言刷题解析    C语言系列文章    我的成长经历感谢阅读!初来乍到,如有错误请指出,感谢!描述KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组......
  • [leetcode 第 400 场周赛]题解
    第一题:classSolution{publicintminimumChairs(Strings){intx=0;intans=0;for(inti=0;i<s.length();i++){if(s.charAt(i)=='E'){x--;if(x<0){ans++;x=0;......
  • Codeforces Round 949 (Div. 2)
    目录写在前面ABCD写在最后写在前面比赛地址:https://codeforces.com/contest/1976妈的昨晚硬撑打了场edu上午实验下午爬山考试困困困妈的什么二进制场,C吃了个爽呃呃写得什么史山A二进制。一个显然的想法是选择区间\([l,r]\)中质因数次数之和最大的数。特别指出了限制......
  • Codeforces Round 949 (Div. 2)
    榜单#提交者=*ABCDEF1(2055)gutongxing20261388-1488900A#include<bits/stdc++.h>usingnamespacestd;intT,n,m;signedmain(){ scanf("%d",&T); while(T--){ scanf("%d%d",&n,&m); printf(&quo......
  • 123. 连续子数组最大和(卡码网周赛第十九期)
    123.连续子数组最大和(卡码网周赛第十九期(23年小红书提前批笔试真题))题目描述小红拿到了一个数组,她希望进行最多一次操作:将一个元素修改为x。小红想知道,最终的连续子数组最大和最大是多少?输入第一行输入一个正整数t,代表询问次数。对于每次询问,输入两行:第一行输入两......
  • Educational Codeforces Round 166 (Rated for Div. 2)
    目录写在前面ABCD写在最后写在前面比赛地址:https://codeforces.com/contest/1976满课,并且48小时之内只睡了8h。本来不想打的,但是手痒就上小号打了,然而唐唐唐掉大分呃呃A签到。感谢isdigit函数。///*By:Luckyblock*/#include<bits/stdc++.h>#defineLLlonglon......