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

哪里可以做网站系统/南京seo按天计费

哪里可以做网站系统,南京seo按天计费,在今日头条之类网站做电商,大连城乡建设网官网合适数对 [Link](4316. 合适数对 - AcWing题库) 题意 思路 树状数组 设sis_isi​为aia_iai​的前缀和&#xff0c;等价于sr−sl−1<t→sr−t<sl−1s_r-s_{l-1}<t \to s_r-t<s_{l-1}sr​−sl−1​<t→sr​−t<sl−1​&#xff0c;就是对于每一个sis_isi​…

合适数对

[Link](4316. 合适数对 - AcWing题库)

题意

在这里插入图片描述

思路

  • 树状数组

sis_isiaia_iai的前缀和,等价于sr−sl−1<t→sr−t<sl−1s_r-s_{l-1}<t \to s_r-t<s_{l-1}srsl1<tsrt<sl1,就是对于每一个sis_isis0到si−1s_0到s_{i-1}s0si1中有多少个大于sr−ts_r-tsrt的数,由于值域太大我们先对所有可能用到的数进行离散化,然后对值域进行动态前缀和即可。

Code

#include <bits/stdc++.h>
#define x first
#define y second
#define debug(x) cout<<#x<<":"<<x<<endl;
using namespace std;
typedef long double ld;
typedef long long LL;
typedef pair<int, int> PII;
typedef pair<double, double> PDD;
typedef unsigned long long ULL;
const int N = 4e5 + 10, M = 2 * N, INF = 0x3f3f3f3f, mod = 1e9 + 7;
const double eps = 1e-8, pi = acos(-1), inf = 1e20;
int dx[] = {-1, 0, 1, 0}, dy[] = {0, 1, 0, -1};
int h[N], e[M], ne[M], w[M], idx;
void add(int a, int b, int v = 0) {e[idx] = b, w[idx] = v, ne[idx] = h[a], h[a] = idx ++;
}
LL n, m, k, t;
vector<LL> ve;
int g(LL x) {return lower_bound(ve.begin(), ve.end(), x) - ve.begin() + 1;
}
int tr[N];
int lowbit(int x) {return x & -x;
}
void add(int x) {for ( ; x < N; x += lowbit(x)) tr[x] ++;
}
int sum(int x) {int res = 0;for (; x; x -= lowbit(x)) res += tr[x];return res;
}
int main() {ios::sync_with_stdio(false), cin.tie(0);cin >> n >> t;vector<LL> s(n + 1);for (int i = 1; i <= n; i ++) cin >> s[i], s[i] += s[i - 1], ve.push_back(s[i]), ve.push_back(s[i] - t);ve.push_back(0), ve.push_back(-t);sort(ve.begin(), ve.end());ve.erase(unique(ve.begin(), ve.end()), ve.end());LL res = 0;add(g(0));for (int i = 1; i <= n; i ++) {res += i - sum(g(s[i] - t));add(g(s[i]));}cout << res << '\n';return 0;
}
  • 归并排序

我们要找的是sr−sl<ts_r-s_l<tsrsl<t的数有多少个,仿照归并排序求逆序对的方法,对于两个有序的数组a,ba,ba,b我们可以这样划分方案,对于aaa中的每个位置iiibbb中有多少个位置与之合法,当i−>i+1i->i+1i>i+1时相当于sls_lsl增大,因此之前成立的bbb中的位置依旧成立因此类似于双指针的感觉我们可以O(n)O(n)O(n)的维护每个区间的贡献,复杂度O(nlogn)O(nlogn)O(nlogn)

Code

#include <bits/stdc++.h>
#define x first
#define y second
#define debug(x) cout<<#x<<":"<<x<<endl;
using namespace std;
typedef long double ld;
typedef long long LL;
typedef pair<int, int> PII;
typedef pair<double, double> PDD;
typedef unsigned long long ULL;
const int N = 2e5 + 10, M = 2 * N, INF = 0x3f3f3f3f, mod = 1e9 + 7;
const double eps = 1e-8, pi = acos(-1), inf = 1e20;
int dx[] = {-1, 0, 1, 0}, dy[] = {0, 1, 0, -1};
int h[N], e[M], ne[M], w[M], idx;
void add(int a, int b, int v = 0) {e[idx] = b, w[idx] = v, ne[idx] = h[a], h[a] = idx ++;
}
LL n, m, k, t;
LL a[N];
LL res;
void merge(int l, int r) {if (l >= r) return ;int mid = l + r >> 1;merge(l, mid), merge(mid + 1, r);    for (int i = l, j = mid + 1; i <= mid; i ++) {while (j <= r && a[j] - a[i] < t) j ++;res += j - mid - 1;}inplace_merge(a + l, a + mid + 1, a + r + 1);
}
int main() {ios::sync_with_stdio(false), cin.tie(0);cin >> n >> t;for (int i = 1; i <= n; i ++) cin >> a[i], a[i] += a[i - 1];merge(0, n);cout << res << '\n';return 0;
}
http://www.lbrq.cn/news/934147.html

相关文章:

  • 招聘网站建设初衷/星沙网站优化seo
  • 进入网站服务器怎么做/百度竞价托管运营
  • 做b2c网站需要多少钱/河南百度关键词优化排名软件
  • 网站导航栏/全网营销课程
  • 网站建设是怎么赚钱/百度深圳总部
  • 网站被k如何恢复/网站优化分析
  • 无锡正规网站建设/上海百度关键词推广
  • 重庆 网站备案/百度指数趋势
  • 网站初期如何推广的/青岛seo关键字排名
  • 怎么用花生壳做网站/球队积分排名
  • 长春制作手机网站/广州seo网站公司
  • 做网站外贸怎么找客户/百度热榜
  • 淄博专业网站建设哪家好/网络营销的主要方法
  • 国外的自建站平台是什么/深圳做推广哪家比较好
  • 企业网站源码php/免费seo关键词优化方案
  • 唐山网站建设.com/中国国家培训网官网
  • 制作网页的最后一个阶段工作是什么/成都seo公司
  • 软件开发与网站开发/seo的方式包括
  • javaweb做社交网站思路/怎么样建立自己的网站
  • 上海 建设工程质量监督站网站/营销软文范例大全100字
  • 制作网站的步骤/国内seo服务商
  • 嘉定区建设局网站/女教师网课入侵录屏冫
  • 白云手机网站建设/竞价排名名词解释
  • 天津市网站制作 公司/宁德市旅游景点大全
  • 邯郸网站建设哪家专业/常用的seo查询工具有哪些
  • jsp做网站的流程/精准客户数据采集软件
  • 动态网站/泽成seo网站排名
  • 网站后台怎么修改/如何宣传推广
  • wordpress主题模板调用/湘潭seo培训
  • 做华为网站的还有哪些功能吗/网站app开发公司
  • 暑期算法训练.11
  • WebSocket配置实战:打造稳健高效的消息通信系统
  • 零基础构建MCP服务器:TypeScript/Python双语言实战指南
  • Kafka 单机多 Broker 实例集群搭建 | 详情
  • ITIL 4 高速IT:解耦架构——构建快速迭代的技术基座
  • 爬虫自动化:一文掌握 PyAutoGUI 的详细使用