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

P3909 异或之积 解题报告

异或之积

异或之积题目
这个形式我特别喜欢,直球版公式代入,你就从O(n3)着手,然后前缀和优化到O(n2),然后优化到O(n)
优化形式都是前缀和
废话不多说,直接上代码

//完全暴力 30 - 40pts
// #include<bits/stdc++.h>
// using namespace std;
// using ll = long long;
// const int N = 1e6+10;
// const int MOD = 1e9+7;
// int a[N];
// int main()
// {
//     ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
//     int n;cin>>n;
//     ll ans = 0;
//     for(int i = 1;i <= n;i++)cin>>a[i];//     for(ll i = 1;i <= n;i++)
//     {
//         for(ll j = i+1;j <= n;j++)
//         {
//             for(ll k = j + 1;k <= n;k++)
//             {
//                 ans = (ans + 6 * a[i] % MOD * a[j] % MOD * a[k] % MOD) % MOD;
//             }
//         }
//     }
//     cout<<ans % MOD<<"\n";
//     return 0;
// }//O(n ^ 2)优化 50pts
// #include<bits/stdc++.h>
// using namespace std;
// using ll = long long;
// const int N = 5100;
// const int MOD = 1e9+7;
// ll a[N],Pre[N];
// int main()
// {
//     ll n;cin>>n;
//     ll ans = 0;
//     for(ll i = 1;i <= n;i++)cin>>a[i];
//     for(ll i = 1;i <= n;i++) 
//     {
//         Pre[i] = (Pre[i-1] + a[i]) % MOD; 
//     }//     for(ll i = 1;i <= n;i++)
//     {
//         for(int j = i + 1;j <= n;j++)
//         {
//             ans = ans + (6 * a[i] % MOD * a[j] % MOD * (Pre[n] - Pre[j]) % MOD) % MOD;
//         }
//     }
//     cout<<ans % MOD<<"\n";
//     return 0;
// }//O(n)优化 100pts
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 1e6+10;
const int MOD = 1e9+7;
ll a[N],Pre[N];
int main()
{ll n;cin>>n;ll ans = 0;ll sum = 0;//数组开始到当前元素的累加和ll sum1 = 0;//存储前缀和的平方for(ll i = 1;i <= n;i++)cin>>a[i];for(ll i = 1;i <= n;i++){//更新前缀和的值ans = (ans + sum1 * a[i] % MOD) % MOD;sum1 = (sum1 + sum * a[i] % MOD) % MOD;sum = (sum + a[i]) % MOD;}ans = (ans * 6) % MOD;cout<<ans % MOD<<"\n";return 0;
}
http://www.xdnf.cn/news/1181.html

相关文章:

  • QML FontDialog:使用FontDialog实现字体选择功能
  • 【重走C++学习之路】16、AVL树
  • Java练习——day3
  • qemu如何支持vmovdqa64指令(百度AI)
  • 游戏工作室为何要更换IP进行多开?工作室使用代理IP要注意什么?
  • 35.编写一个简单的Mybatis插件
  • ​​电商系统用户需求报告(示例)
  • 随着ai技术的应用,及玩具类产品的层出不穷,开发此类产品的情感AI算法技术的底层构架,及情感AI算法的应用场景是转型的比较好的一个方向
  • HTTP状态码有哪些常见的类型?
  • 三网通电玩城平台系统结构与源码工程详解(四):子游戏集成与服务器调度机制全解
  • Spring AOP + Logback + MDC全链路日志追踪
  • 三线服务器通常适用于哪些用户?
  • GPIO(通用输入输出端口)详细介绍
  • 【T2I】TOKENCOMPOSE: Text-to-Image Diffusion with Token-level Supervision
  • 【2025最新面试Java八股】Java虚拟线程怎么回事,是协程吗?
  • 解决开启代理时无法正常使用Microsoft Store, OneDrive, Outlook等应用的问题
  • 构建“穿戴+云端”落水应急响应体系,为海上作业人员打造全天候、全场景的安全守护网
  • 三网通电玩城平台系统结构与源码工程详解(三):控制台与银商权限模块设计
  • 互联网大厂Java面试:从基础到进阶的技术点探讨
  • 108. 将有序数组转换为二叉搜索树
  • Python——入门... ...
  • 突破 RAG 检索瓶颈:Trae+MCP 构建高精度知识库检索系统实践
  • 嘻游组件解密工具实战教程:资源解包与UI替换全流程
  • 一目十行阅读法
  • 航电系统自适应与容错机制要点
  • Git ——提交至github,Vercel拉取,更新不了项目的问题解决
  • LOH 怎么进行深度标准化?
  • (15)VTK C++开发示例 --- 生成随机数的首选方法
  • 【读论文】HM-RAG:分层多智能体多模态检索增强生成
  • Spring Boot多环境配置详解