杭州CCPC Master of GCD

25人阅读 评论(0) 收藏 举报
分类:

差分

#include<bits/stdc++.h>
using namespace std;
typedef long long int LL;
const int N=100000+10;
#define Mod 998244353
#define INF 1<<31-1
LL c2[N],c3[N];
LL ans2[N],ans3[N];
LL quick_power(LL a,LL b)
{
    LL ans=1;
    a = a%Mod;
    while(b>0)
    {
        if(b%2 == 1)
        ans =ans*a%Mod;
        b =b/2;
        a =a*a% Mod;
    }
    return ans%Mod;
}
LL min1(LL a,LL b)
{
    if(a>b)
        return b;
    else
        return a;
}
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        LL n,m;
        scanf("%lld%lld",&n,&m);
        for(int i=1;i<=n+9;i++)
        {
            c2[i]=0;
            c3[i]=0;
            ans2[i]=0;
            ans3[i]=0;
        }
        LL l,r,q;
        for(int i=1;i<=m;i++)
        {
            scanf("%lld%lld%lld",&l,&r,&q);
            if(q==2)
            {
                c2[l]++;
                c2[r+1]--;
            }
            else
            {
                c3[l]++;
                c3[r+1]--;
            }
        }
        for(int i=1;i<=n;i++)
        {
            ans2[i]=ans2[i-1]+c2[i];
            ans3[i]=ans3[i-1]+c3[i];
        }
      /*  for(int i=1;i<=n;i++)
        {
            printf("%d ",ans2[i]);
        }
        cout<<endl;
        for(int i=1;i<=n;i++)
        {
            printf("%d ",ans3[i]);
        }
        cout<<endl;*/
        LL x=0,y=0,mi2=INF,mi3=INF;
        for(int i=1;i<=n;i++)
        {
            mi2=min(mi2,ans2[i]);
            mi3=min(mi3,ans3[i]);
        }
       // printf("%d\n",x);
        LL sum=((quick_power(2,mi2)%Mod)*(quick_power(3,mi3)%Mod))%Mod;
        printf("%lld\n",sum);
    }
    return 0;
}
查看评论

ccpc2017杭州 J Master of GCD

题意:给你一个长度为n的全一数组s[n],进行m次操作,每次操作是在区间[l,r]中的所有a[i]乘x(x是2 or 3)。求s[n]的最大公约数。题解:如果直接n*m的话复杂度太高,所以需要优化,每...
  • Endeavor_jianjian
  • Endeavor_jianjian
  • 2018-04-17 11:19:15
  • 42

HDU6274&&2017CCPC杭州K Master of Sequence 【二分+预处理】

传送门 题意描述: 给长度为n的数组a和b。然后有m给长度为n的数组a和b。然后有m给长度为n的数组a和b。然后有m次操作,1)把ax的值变为yax的值变为ya_x的值变为y;2)把bxbxb...
  • m0_37953323
  • m0_37953323
  • 2018-04-14 20:59:56
  • 75

2016中国大学生程序设计竞赛(ccpc 杭州)题解报告

2016中国大学生程序设计竞赛(ccpc 杭州)题解报告
  • queuelovestack
  • queuelovestack
  • 2016-10-31 22:04:07
  • 2898

CCPC 2017 秦皇岛和杭州的总结

打铁归来,见过了大海和西湖,见过了大佬和金牌队,看着和自己差不多水平的同年ACMer拿牌…… 这怎么说呢,还是菜。写不出来推不出来的事情发生了,但是我不能就停在半山腰放弃治疗了,先写写感受,留下一点...
  • lingzidong
  • lingzidong
  • 2017-11-07 18:58:41
  • 382

2017ccpc赛后总结(杭州站)

回顾与反思     2017/11/3, 下午我们满怀期待的前往目的地,到达酒店后做好准备,适当放松。      2017/11/4,下午14:00热身赛开始,作为学生教练的我虽然没有参与比赛,但是也...
  • qq_36501295
  • qq_36501295
  • 2017-11-06 20:12:55
  • 429

2017CCPC杭州站打铁总结

第一次参加CCPC这种大型比赛,感觉像乡下人进城一样高兴,吃的挺好,两荤两素而且住的也不错,操作系统的liunx的吓得我无法操作,还好队友学长厉害的啥都会,分分钟解决这种小事情,比赛的时候还见到了一堆...
  • winnerCLAY
  • winnerCLAY
  • 2017-11-06 20:29:34
  • 412

2016 CCPC 杭州站 总结

再次来到杭电,其实是有点难过的,虽然我一直没说,走在杭电的校园里的时候还能想起来自己上次来的时候的种种幼稚。但是这场比赛打下来,感觉自己也想开许多了,虽然还是比赛还是失败了。 恩,讲比赛吧。 热身赛的...
  • johsnows
  • johsnows
  • 2016-10-22 21:08:03
  • 938

2016ccpc杭州赛 hdu 5935 C.Car

Car Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm...
  • overload1997
  • overload1997
  • 2016-10-29 19:53:34
  • 452

2016CCPC杭州站 C - Car 【贪心】

Ruins is driving a car to participating in a programming contest. As on a very tight schedule, he wi...
  • Irish_Moonshine
  • Irish_Moonshine
  • 2017-10-26 21:54:06
  • 226
    个人资料
    持之以恒
    等级:
    访问量: 6425
    积分: 494
    排名: 10万+
    最新评论