Add

题意

将序列进行一系列的操作,输出对 \(a_{1}\) 的期望值。

题目中操作说的比较明了,再次就不特殊声明了。

思路

据题意所知,每一个 \(n\) 应该对应了一个固定的答案。

于是我就想到可以打表,就打出了下面的式子。

n=1时 ans=1
n=2时 ans=5
n=3时 ans=14
n=4时 ans=30
n=5时 ans=55

我发现这些数不一般,仔细观察后,发现这些数是平方数的和。

即 \(1^{2}+2^{2}+3^{2}+\dots +n^{2}\)。

那么只要计算并化简即可。

答案证明

将 \(a_{x}\) 代入到 \(a_{y}\) 中得贡献为 \(2x^{2}+2xy\)。

则总贡献为 \(1(2x^{2}+2xy)+2(2x^{2}+2xy)+3(2x^{2}+2xy)+\dots+(x-1)(2x^{2}+2xy)=x^{3}-x\)。

于是答案为 \(1( \frac{x^{3}-x }{x-1})+2( \frac{x^{3}-x }{x-1})+\dots +x( \frac{x^{3}-x }{x-1})\)。

则答案化简后为为 $\frac{n(n+1)(2n+1)}{6} $。

代码

#include<bits/stdc++.h>
using namespace std;
const long long mod=998244353;
long long t,a,b,n;
int main(){
cin>>t;
while(t--){
cin>>n;
a=(n*n+n)/2,b=2*n+1;
if(a%3)b/=3;
else a/=3;
cout<<(a%mod)*b%mod<<endl;
}
return 0;
}

题解:P10329 [UESTCPC 2024] Add的更多相关文章

  1. [LeetCode 题解]: Add Two Numbers

    You are given two linked lists representing two non-negative numbers. The digits are stored in rever ...

  2. 【题解】【链表】【Leetcode】Add Two Numbers

    You are given two linked lists representing two non-negative numbers. The digits are stored in rever ...

  3. leetcode 题解 Add Two Numbers(两个单链表求和)

    题目: You are given two linked lists representing two non-negative numbers. The digits are stored in r ...

  4. leetcode题解2. Add Two Numbers

    题目: You are given two non-empty linked lists representing two non-negative integers. The digits are ...

  5. 《LeetBook》LeetCode题解(2):Add Two Numbers [M]

    我现在在做一个叫<leetbook>的免费开源书项目,力求提供最易懂的中文思路,目前把解题思路都同步更新到gitbook上了,需要的同学可以去看看 书的地址:https://hk029.g ...

  6. [LeetCode] Add Two Numbers题解

    Add Two Numbers: You are given two non-empty linked lists representing two non-negative integers. Th ...

  7. LeetCode题解——Add Two Numbers

    题目: 两个数字求和,数字用链表表示,每一个结点代表一位.链表顺序与数字顺序相反,即表头存放数字的最低位. 解法: 分别遍历两个链表的每个结点,对两个结点求和即可.要维护一个变量保存每次相加之后的进位 ...

  8. Lintcode221 Add Two Numbers II solution 题解

    [题目描述] You have two numbers represented by a linked list, where each node contains a single digit. T ...

  9. LeetCode 题解之Add Digits

    1.问题描述 2.问题分析 循环拆分数字,然求和判断. 3.代码 int addDigits(int num) { ) return num; int result = num; do{ vector ...

  10. LeetCode题解之Add Strings

    1.题目描述 2.问题分析 直接按照加法运算规则运算即可,注意进位问题. 3.代码 string addStrings(string num1, string num2) { if( num1.emp ...

随机推荐

  1. 慢查询SQL优化

    记一次慢查询的SQL优化 测试表结构 MariaDB [shoppings]> desc login_userinfo; +------------+-------------+------+- ...

  2. LOTO示波器软件新增导览功能

    新版本的大部分型号LOTO示波器的上位机软件我们改成了导航工具条方式.原来的方式是把所有功能都显示在不同的标签页中,这样的优点是非常快捷方便,基本上用鼠标一两次点击就能直达想要的功能设置.但是缺点是不 ...

  3. H264 H265 分析小工具

    1.在调试 H264 H265 编码的流数据的时候,有时候需要打印没有nalu的类型和数量,自己写了一个小工具 使用方式: p.p1 { margin: 0; font: 22px Menlo; co ...

  4. MySQL学习笔记-约束

    约束 约束是作用于表中字段上的规则,用于限制存储在表中的数据,保证数据库中数据的正确.有效和完整. 一. 常用的约束 约束作用于表中的字段,可以在创建表或修改表的时候添加约束. AUTO_INCREM ...

  5. ts的keyof

    keyof 是 TypeScript 中的一种类型操作符,用于获取一个类型的所有键(属性名)作为联合类型.它的语法如下: type KeysOfType = keyof ObjectType; 其中: ...

  6. P7448

    problem & 双倍经验 & blog 低配版本 没有 Ynoi 标志性算法卡常,这点差评. 拆解问题 定义 \(lst_i\) 为上一个和 \(i\) 号点相同的位置. 由于几个 ...

  7. 从pfx私钥证书中提取私钥

    要准备openssl win 32 del /Q c:\mch_private2.pem c:\OpenSSL-Win32\bin\openssl.exe pkcs12 -in c:\mch_priv ...

  8. 【现代 CSS】标准滚动条控制规范 scrollbar-color 和 scrollbar-width

    Chrome 在 121 版本开始,原生支持了两个滚动条样式相关的样式 scrollbar-color 和 scrollbar-width. 要知道,在此前,虽然有 ::-webkit-scrollb ...

  9. 实现并发新高度:23ai的无锁列值保留

    Oracle Database 23ai支持Lock-Free Reservation,中文通常译为"无锁列值保留". 本文将通过3个部分来阐述Lock-Free Reservat ...

  10. H5弹窗底层滑动

    H5弹窗底层滑动 背景 产品提出H5 弹出窗滑动时,底层页面也会跟随滑动,需要调整禁止底层滑动,增加用户体验. 问题产生原因 ios 滑动时有回弹效果 顶层元素滑动默认行为 解决办法 阻止元素的默认( ...