首页 > 其他分享 >【LGR-203-Div.4】洛谷入门赛 #28

【LGR-203-Div.4】洛谷入门赛 #28

时间:2024-10-18 21:33:31浏览次数:1  
标签:月赛 203 洛谷 int luogu ll 28 cin 202410

【LGR-203-Div.4】洛谷入门赛 #28

\(A\) luogu B4042 [语言月赛 202410] 顺序结构 \(AC\)

  • 顺序结构。

    点击查看代码
    int main()
    { 
        ll a;
        cin>>a;
        cout<<3*(5+a)<<" "<<3*a+5<<endl;
        return 0;
    }
    

\(B\) luogu B4043 [语言月赛 202410] 刻度尺 \(AC\)

  • 模拟。

    点击查看代码
    int main()
    {
        ll n,a,b;
        cin>>n>>a>>b;
        if(a-b>=0||a+b<=n)
        {
            if(b==0)
            {
                cout<<a<<endl;
            }
            else
            {
                if(a-b>=0)
                {
                    cout<<a-b<<" ";
                }
                if(a+b<=n)
                {
                    cout<<a+b<<endl;
                }
            }
        }
        else
        {
            cout<<"No solution"<<endl;
        }
        return 0;
    }
    

\(C\) luogu B4044 [语言月赛 202410] 奇迹战神 \(AC\)

  • 模拟。

    点击查看代码
    int main()
    {
        ll n,w,d,ans=0x7f7f7f7f,i;
        cin>>n;	
        for(i=1;i<=n;i++)
        {
            cin>>w>>d;
            ans=min(ans,7*(d-1)+w+1);
        }
        cout<<ans<<endl;
        return 0;
    }
    

\(D\) luogu B4045 [语言月赛 202410] 同桌 \(AC\)

  • 两人可以成为同桌当且仅当互相想要和对方做同桌。

    点击查看代码
    ll p[10010],vis[10010];
    int main()
    {
        ll n,flag=1,i;
        cin>>n;
        for(i=1;i<=2*n;i++)
        {
            cin>>p[i];
        }
        for(i=1;i<=2*n;i++)
        {
            if(p[i]==i||p[p[i]]!=i)
            {
                flag=0;
                break;
            }
        }
        if(flag==0)
        {
            cout<<"No"<<endl;
        }
        else
        {
            cout<<"Yes"<<endl;
        }
        return 0;
    }
    

\(E\) luogu B4046 [语言月赛 202410] 寻找质数 \(AC\)

  • 筛法求素数板子。

    点击查看代码
    int prime[1000010],vis[1000010],len=0;
    void isprime(int n)
    {
        memset(vis,0,sizeof(vis));
        for(int i=2;i<=n;i++)
        {
            if(vis[i]==0)
            {
                len++;
                prime[len]=i;
            }
            for(int j=1;j<=len&&i*prime[j]<=n;j++)
            {
                vis[i*prime[j]]=1;
                if(i%prime[j]==0)
                {
                    break;
                }
            }
        }
    }
    int main()
    {
        int n,m,r,k,ans=-1,cnt=0,i;
        cin>>n>>m>>r>>k;
        isprime(n);
        for(i=len;i>=1;i--)
        {
            if(prime[i]%m==r)
            {
                cnt++;
                if(cnt==k)
                {
                    ans=prime[i];
                    break;
                }
            }
        }
        cout<<ans<<endl;	
        return 0;
    }
    

\(F\) luogu B4047 [语言月赛 202410] 校门外的施工 \(AC\)

  • 做法同 luogu P1047 [NOIP2005 普及组] 校门外的树 ,如果你要写珂朵莉树的话我也不拦着你。

    点击查看代码
    int a[5010],b[5010];
    int main()
    {
        int n,m,pd,l,r,ans1=0,ans2=0,i,j;
        cin>>m>>n;
        ans1=m;
        ans2=m-1;
        for(i=1;i<=n;i++)
        {
            cin>>pd>>l>>r;
            if(pd==1)
            {	
                for(j=l+1;j<=r-1;j++)
                {
                    a[j]=1;
                }
                for(j=l;j<=r-1;j++)
                {
                    b[j]=1;
                }
            }
            else
            {
                for(j=l;j<=r;j++)
                {
                    a[j]=1;
                }
                for(j=l;j<=r-1;j++)
                {
                    b[j]=1;
                }
            }
        }
        for(i=1;i<=m;i++)
        {
            ans1-=a[i];
            ans2-=b[i];
        }
        cout<<ans1<<" "<<ans2<<endl;
        return 0;
    }
    

\(G\) luogu B4048 [语言月赛 202410] 断章取义 \(AC\)

  • 如果没有统计剪辑轮数的话就是 luogu P4824 [USACO15FEB] Censoring S 了,因为 \(|s|\) 很小所以直接模拟即可。

    点击查看代码
    int vis[150];
    char s[150],t[150];
    int main()
    {
        int T,n,m,cnt=0,flag,i;
        cin>>T>>(s+1);
        n=strlen(s+1);
        while(1)
        {
            flag=0;
            memset(vis,0,sizeof(vis));
            for(i=1;i<=n;i++)
            {
                t[i]=s[i];
            }
            for(i=1;i<=n;i++)
            {
                if(t[i]=='n'&&t[i+1]=='o'&&t[i+2]=='t'&&i+2<=n)
                {
                    flag=1;
                    vis[i]=vis[i+1]=vis[i+2]=1;
                }
            }
            if(flag==0)
            {
                break;
            }
            else
            {
                cnt++;
                m=0;
                for(i=1;i<=n;i++)
                {
                    if(vis[i]==0)
                    {
                        m++;
                        s[m]=t[i];
                    }
                }
                n=m;
            }
        }
        for(i=1;i<=n;i++)
        {
            cout<<s[i];
        }
        cout<<endl;
        cout<<cnt<<endl;
        return 0;
    }
    

\(H\) luogu B4049 [语言月赛 202410] 平均分计算 \(AC\)

  • 模拟。

    点击查看代码
    struct node
    {
        ll id,sc;
    }e[110];
    ll id[50][110],sc[50][110],w[50][110],p[50];
    ll gcd(ll a,ll b)
    {
        return b?gcd(b,a%b):a;
    }
    bool cmp(node a,node b)
    {
        return a.sc>b.sc;
    }
    int main()
    {
        ll n,pos,i,j,k,ans=0,cnt=0,tmp,d;
        cin>>n;
        for(k=1;k<=n;k++)
        {
            cin>>p[k];
            for(i=1;i<=p[k];i++)
            {
                cin>>id[k][i];
            }
            for(i=1;i<=p[k];i++)
            {
                cin>>sc[k][i];
            }
            for(i=1;i<=p[k];i++)
            {
                cin>>w[k][i];
            }
        }
        cin>>pos;
        for(k=1;k<=n;k++)
        {
            sort(id[k]+1,id[k]+1+p[k]);
            for(i=1;i<=p[k];i++)
            {
                e[i].sc=sc[k][i];
                e[i].id=id[k][i];
            }
            sort(e+1,e+1+p[k],cmp);
            for(i=1;i<=p[k];i++)
            {
                if(e[i].id==pos)
                {
                    cnt++;
                    for(j=i;e[j].sc==e[i].sc&&j>=1;j--);
                    ans+=w[k][j+1];
                    break;
                }
            }
        }
        if(ans%cnt==0)
        {
            cout<<ans/cnt<<endl;
        }
        else
        {
            tmp=ans/cnt;
            ans-=tmp*cnt;
            d=gcd(ans,cnt);
            ans/=d;
            cnt/=d;
            cout<<tmp<<"+"<<ans<<"/"<<cnt<<endl;
        }
        return 0;
    }
    

总结

  • \(B\) 把 if 打成了 else if ,吃了发罚时。
  • \(F\) 数组开小了,吃了发罚时;短时间没适应过来 \(n\) 表示操作次数, \(m\) 表示长度。
  • \(E,G\) 关于排名的定义一开始没有注意到。
  • \(G\) 因为不会统计比它大的数的个函数,吃了两发罚时。

标签:月赛,203,洛谷,int,luogu,ll,28,cin,202410
From: https://www.cnblogs.com/The-Shadow-Dragon/p/18475096

相关文章

  • jsp儿童成长信息管理系统t7728--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、研究背景在信息化时代背景下,儿童成长的记录与管理逐渐趋向于数字化、智能化。家长、教师及教育机构对儿童成长信息的关注日益增强,传统的纸质记......
  • 洛谷 P1983 [NOIP2013 普及组] 车站分级(拓扑排序)
    题目传送门解题思路对于每一趟列车,我们可以知道其中没有经过的车站的级别肯定会比经过的车站的级别低。于是,我们可以根据这种关系来建一个图。将等级小的车站往等级大的车站建边。于是,我们可以发现这是一个DAG(有向无环图),所以我们可以拓扑排序。我们从等级最小的车站......
  • python+flask框架的公寓管理系统小程序小程序端28(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景随着城市化进程的加速,公寓租赁市场日益繁荣,传统的人工管理方式已难以满足高效、便捷的管理需求。关于公寓管理系统的研究,现有研究主要以大......
  • python+flask框架的高考志愿填报小程序小程序28(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容选题背景高考志愿填报是每位高中生面临的重要选择,它不仅关系到学生未来的职业发展和人生规划,也是教育资源配置和社会人才流动的重要环节。现有研究......
  • 南沙C++信奥赛陈老师解一本通题 1284:摘花生
    ​【题目描述】HelloKitty想摘点花生送给她喜欢的米老鼠。她来到一片有网格状道路的矩形花生地(如下图),从西北角进去,东南角出来。地里每个道路的交叉点上都有种着一株花生苗,上面有若干颗花生,经过一株花生苗就能摘走该它上面所有的花生。HelloKitty只能向东或向南走,不能向西或......
  • 我的创作纪念日-----写在​《计算机的错误计算》系列​的第128天
    机缘    现实世界中,‘七’表示一个周期。比如,一周七天。数字世界中,2的7次方可以说是一个阶段。从写第一篇内容开始,一晃来到了一个阶段( 天)的末尾。    回首往事,本想在哪里写点什么,或记录点什么,或向人述说点什么;这里,那里,到处寻找可留文字的地方。一日,家人推荐“......
  • 基于STM32实现硬件SPI与W25Q128通讯步骤及程序
    为了大家更加直接了当的获取信息,我直接上干货一、硬件原理图:W25Q128模块图由上图可以看出,要和W25Q128通讯需要采用单片机上的SPI2W25Q128引脚连线图由上图看出:CS(片选)--------------PB12SCK--------------PB13MISO--------------PB14MOSI--------------PB15一、标......
  • 1283 回文日期 枚举 模拟 时间
    #include<bits/stdc++.h>#definelllonglongusingnamespacestd;constintN=1e3+10;//每个月的天数,2月暂时设为29天,后续会根据闰年和平年调整inta[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};intmain(){ints1,s2,ans=0;cin>>......
  • 关于 KubeSphere IDOR 安全漏洞 CVE-2024-46528 的声明及解决方案
    近期,有第三方平台的安全技术人员发现了在KubeSphere开源版3.4.1及4.1.1上存在不安全的直接对象引用(IDOR)的漏洞,该漏洞允许低权限的通过认证的攻击者在没有适当授权检查的情况下访问敏感资源。我们及时与对方进行了联系,并帮助对方解决了此问题,CVE漏洞的详细信息及问题处理过......
  • 洛谷 P8572 [JRKSJ R6] Eltaw 做题记录
    zhr随机跳题跳到的,遂做之。注意到\(nk\le5\times10^5\),考虑根号分治。当\(n\)很大时,\(k\)会很小,于是我们记录每一行的前缀和,每一次循环\(k\)个数组的前缀和取\(\max\)即可,时间复杂度\(O(qk)\)。当\(k\)很大时,\(n\)会很小,我们暴力预处理区间\([l,r]\)的最大值,......