洛谷刷题9

发布于:2025-07-06 ⋅ 阅读:(15) ⋅ 点赞:(0)

B4355 [GESP202506 一级] 值日

B4355 [GESP202506 一级] 值日 - 洛谷

难度:入门 —— 入门+

这道题有三种解法,第三种解法在一部分比赛中被禁用

AC代码(第一种方法:循环)

#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
    int n,m;
    cin>>n>>m;
    for(int i=max(n,m);;i++)
    {
        if(i%m==0&&i%n==0)
        {
            cout<<i;
            return 0;
        }
    }
    return 0;
}

第二种方法:自定义函数gcd,lcm:

#include <iostream>
using namespace std;
int gcd(int n,int m)
{
    return m==0?n:gcd(m,n%m);
}
int lcm(int n,int m)
{
    return n*m/gcd(n,m);
}
int main()
{
    int m,n;
    cin>>n>>m;
    cout<<lcm(n,m);
    return 0;
}

第三种方法:导入numeric库

#include <iostream>
#include <numeric>
using namespace std;
int main()
{
    int m,n;
    cin>>n>>m;
    int l=lcm(n,m);
    cout<<l;
    return 0;
}

B3971 [语言月赛 202405] 闰年

B3971 [语言月赛 202405] 闰年 - 洛谷

难度:入门

按照题意模拟,挨个判断即可

AC代码:

#include <iostream>
using namespace std;
int main()
{
    #define int long long
    int y;
    cin>>y;
    if(y%4!=0)
    {
        cout<<"No";
    }
    else if(y%4==0&&y%100!=0)
    {
        cout<<"Yes";
    }
    else if(y%100==0&&y%400!=0)
    {
        cout<<"No";
    }
    else if(y%400==0&&y%3200!=0)
    {
        cout<<"Yes";
    }
    else if(y%3200==0&&y%172800!=0)
    {
        cout<<"No";
    }
    else
    {
        cout<<"Yes";
    }
    return 0;
}

AC记录

B3970 [语言月赛 202405] 数字取模

B3970 [语言月赛 202405] 数字取模 - 洛谷

难度:入门

将x拆分即可后拼接即可

AC代码:

#include <iostream>
using namespace std;
int main()
{
    #define int long long
    int x,x1,x2,x3,x4,k;
    cin>>x>>k;
    x1=x/1000;
    x2=x/100%10;
    x3=x/10%10;
    x4=x%10;
    x1%=k;
    x2%=k;
    x3%=k;
    x4%=k;
    int x_=x1*1000+x2*100+x3*10+x4*1;
    cout<<x_<<endl;
    return 0;
}

AC记录

B3931 [语言月赛 202402] 射箭

B3931 [语言月赛 202402] 射箭 - 洛谷

难度:入门

直接判断即可

AC代码:

#include <iostream>
using namespace std;
int main()
{
    #define int long long
    int x,y,z,cnt=0;
    cin>>x>>y>>z;
    if(x>y+z||y>x+z||z>y+x)
    {
        cnt++;
    }
    cout<<cnt;
    return 0;
}

AC记录

B3792 [NICA #1] 年龄问题

B3792 [NICA #1] 年龄问题 - 洛谷

难度:入门- —— 入门

经典数学问题:年龄问题

AC代码: 

#include <iostream>
using namespace std;
int main()
{
    #define int long long
    int a,b,c;
    cin>>a>>b>>c;
    int _=a-b,__=a+c;
    cout<<_<<" "<<__;
    return 0;
}

AC记录

B3794 [NICA #1] 图形

B3794 [NICA #1] 图形 - 洛谷 

难度:入门 —— 入门+

还是数学问题

求面积

注意:在此题中\pi= 3.1415926535 

AC代码: 

#include <cstdio>
#include <iomanip>
#include <iostream>
using namespace std;
int main()
{
    #define int long long
    int x=0,y=0,a,b,c;
	cin>>a>>b>>c;
	double n,s,d=0;
	x=a*c;
	y=b*(a+c);
	s=3.1415926535*c*c;
	s/=4;
	d=x+y+s;
	d/=10000;
	printf("%0.3lf\n",d);
	return 0;
}

AC记录