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

珠海在线网站制作公司/品牌策划是做什么的

珠海在线网站制作公司,品牌策划是做什么的,ps专门做兼职的网站,网站百度收录秒收方法思路&#xff1a;这题的思路很容易想到&#xff0c;把所有时间点离散化&#xff0c;然后按时间一步一步来&#xff0c;当到达时间i的时候处理所有在i处的查询。 这个代码怎一个挫字了得 #include<iostream> #include<cstdio> #include<cstring> #include<…

思路:这题的思路很容易想到,把所有时间点离散化,然后按时间一步一步来,当到达时间i的时候处理所有在i处的查询。

这个代码怎一个挫字了得

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<vector>
#define Maxn 100010
#define lowbit(x) (x&(-x))
using namespace std;
int C[Maxn*3],n,ans[Maxn];
struct Flower{int l,r;
}flower[Maxn];
struct Lisan{int val,type,l;int pos;int operator <(const Lisan &temp) const{return val<temp.val;}
}Index[Maxn*4];
struct QT{int val,i;int operator <(const QT &temp) const{return val<temp.val;}
}qt[Maxn];
int Sum(int pos)
{int sum=0;while(pos){sum+=C[pos];pos-=lowbit(pos);}return sum;
}
void update(int pos,int val)
{while(pos<=n){C[pos]+=val;pos+=lowbit(pos);}
}
vector<int> q[Maxn*3];
int main()
{int i,j,m,t,Case=0;scanf("%d",&t);while(t--){memset(C,0,sizeof(C));scanf("%d%d",&n,&m);int cnt=0;for(i=1;i<=n;i++){scanf("%d%d",&flower[i].l,&flower[i].r);Index[++cnt].val=flower[i].l,Index[cnt].pos=i,Index[cnt].type=0,Index[cnt].l=1,Index[++cnt].val=flower[i].r,Index[cnt].type=0,Index[cnt].pos=i,Index[cnt].l=0;}for(i=1;i<=m;i++){scanf("%d",&qt[i].val);qt[i].i=i;Index[++cnt].val=qt[i].val;Index[cnt].type=1;Index[cnt].pos=i;}sort(Index+1,Index+1+cnt);//cout<<"ok"<<endl;int num=0;if(Index[1].type==1){qt[Index[1].pos].val=++num;}else{if(Index[1].l)flower[Index[1].pos].l=++num;elseflower[Index[1].pos].r=++num;}for(i=2;i<=cnt;i++){if(Index[i].val>Index[i-1].val){if(Index[i].type==1){qt[Index[i].pos].val=++num;}else{if(Index[i].l)flower[Index[i].pos].l=++num;elseflower[Index[i].pos].r=++num;}}elseif(Index[i].type==1){qt[Index[i].pos].val=num;}else{if(Index[i].l)flower[Index[i].pos].l=num;elseflower[Index[i].pos].r=num;}}for(i=1;i<=num;i++)q[i].clear();for(i=1;i<=n;i++){q[flower[i].l].push_back(1);q[flower[i].r].push_back(-1);}sort(qt+1,qt+m+1);int r=1;n=num+1;for(i=1;i<=num;i++){cnt=0;if(r>m) break;int size=q[i].size();for(j=0;j<size;j++){update(i,q[i][j]);if(q[i][j]<0)cnt++;}while(qt[r].val==i&&r<=m){ans[qt[r].i]=Sum(qt[r].val)+cnt;r++;}}printf("Case #%d:\n",++Case);for(i=1;i<=m;i++)printf("%d\n",ans[i]);}return 0;
}

 这个代码就简洁多了:

#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#define Maxn 100010
#define lowbit(x) (x&(-x))
using namespace std;
int C[Maxn*2],n,Index[Maxn*3];
struct Node{int val,pos;int operator <(const Node &temp) const{return val<temp.val;}
}node[Maxn*3];
int Sum(int pos)
{int sum=0;while(pos){sum+=C[pos];pos-=lowbit(pos);}return sum;
}
void update(int pos,int val)
{while(pos<=n){C[pos]+=val;pos+=lowbit(pos);}
}
int main()
{int t,m,i,j,Case=0;scanf("%d",&t);while(t--){memset(C,0,sizeof(C));scanf("%d%d",&n,&m);int nx=n<<1;int mx=nx+m;for(i=1;i<=mx;i++){scanf("%d",&node[i].val);node[i].pos=i;}sort(node+1,node+mx+1);int cnt=0;Index[node[1].pos]=++cnt;for(i=2;i<=mx;i++){if(node[i].val==node[i-1].val)Index[node[i].pos]=cnt;elseIndex[node[i].pos]=++cnt;}n=cnt+10;for(i=1;i<=nx;i++){//cout<<Index[i]<<" * ";update(Index[i++],1);update(Index[i]+1,-1);// cout<<Index[i]+1<<endl;
        }printf("Case #%d:\n",++Case);for(i=nx+1;i<=mx;i++){// cout<<Index[i]<<endl;printf("%d\n",Sum(Index[i]));}}return 0;
}
View Code

 

转载于:https://www.cnblogs.com/wangfang20/p/3229511.html

http://www.lbrq.cn/news/1343935.html

相关文章:

  • 天津和平做网站贵吗/海外营销方案
  • 做女装网站应怎么定位/网页制作流程
  • 图片展示网站/如何做企业网页
  • 南宁手机网站建设/制作app平台需要多少钱
  • 怎么做网站添加二维码/建立一个网站需要多少钱?
  • 网站专业代做哪家好/seo sem优化
  • 另类投资公司网站建设规定/营销推广方案
  • 跨平台app开发工具/广州seo教程
  • 如何做网站的订阅/网络营销有哪些就业岗位
  • 用discuz怎样做网站/seo行业岗位有哪些
  • 第一接单网平台/搜索关键词优化排名
  • 网站建设公司兴田德润实惠/西安百度seo代理
  • 移动网站趋势/html做一个简单的网页
  • 大连疫情最新情况今日新增轨迹/东莞市网络seo推广服务机构
  • 一蓝网站建设/平原县网站seo优化排名
  • 机关网站建设方案/员工培训
  • php动态网站开发案例教程实训答案/深圳推广公司有哪些
  • 地产网站开发/网络赚钱推广
  • 网站如何做进一步优化/自助建站系统模板
  • 网站先做前台还是后台/万网官网登录
  • 制作网站品牌公司哪家好/中国十大搜索引擎网站
  • 池州网站建设电话/深圳网络推广最新招聘
  • 网站建设品/网站seo重庆
  • 专业网站设计/软文写作的技巧
  • 建设什么网站/灰色关键词代发可测试
  • 电子邮箱注册网站申请/网络站点推广的方法有哪些
  • 学校网站怎么做的好坏/网站测速工具
  • 包包网站建设策划书/友链价格
  • 网站开发报价表/百度收录的网站
  • 一个asp网站的mdb数据库修改/建站公司排名
  • C/C++内存管理函数模板
  • 十、Linux Shell脚本:流程控制语句
  • Spring的三层架构及其各个层用到注解详细解释。
  • Visual Studio Code (v1.103) 中 GitHub Copilot 最新更新!
  • 电脑IP地址是“169.254.x.x”而无法上网的原因
  • DuoPlus支持导入文件批量配置云手机参数,还优化了批量操作和搜索功能!