专栏文章

12.13日集训

个人记录参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@miqs6x8l
此快照首次捕获于
2025/12/04 09:52
3 个月前
此快照最后确认于
2025/12/04 09:52
3 个月前
查看原文
错误原因分数
P5737100
P3805100
P4013超时25
P4005细节错误70
P4033思路错误20
P8787骗分未遂0

A

P5737 【深基7.例3】闰年展示

时间复杂度:O(b-a+1)

代码

CPP
#include<bits/stdc++.h>
#define int long long
using namespace std;
int ck(int x)
{
	if(x%4==0 and x%100!=0)
		return 1;
	else if(x%400==0)
		return 1;
	return 0;
}
signed main()
{
	int a,b,sum=0;
	cin>>a>>b;
	for(int i=a;i<=b;i++)
	{
		if(ck(i))
			sum++;;
	}
	cout<<sum<<endl;
	for(int i=a;i<=b;i++)
	{
		if(ck(i))
			cout<<i<<" ";
	}
	return 0;
} 

B

[语言月赛 202307] 团伙首领

时间复杂度:O(n)

代码

CPP
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n;
bool sum[1000005];
signed main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		int a;;
		cin>>a;
		sum[a]=1;
	}
	int d=0;
	for(int i=1;i<=1000005;i++)
	{
		d+=sum[i];
	}
	cout<<d;
	return 0;
}

C

[语言月赛 202407] significance

时间复杂度:O(n * n * n)

代码

CPP
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,x[105],sum[105][105],c[105]; 
signed main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>x[i];
		for(int j=1;j<=x[i];j++)
		{
			cin>>sum[i][j];
		}
	}
	for(int i=1;i<=n;i++)
	{
		int cnt=x[i];
		for(int j=1;j<=x[i];j++)
		{
			int l=sum[i][j];
			for(int k=1;k<=x[sum[i][j]];k++)
			{
				if(sum[l][k]!=i)
					cnt++;
			}
		}
		cout<<cnt<<" ";
	}
	return 0;
}

D

B4005 [GESP202406 四级] 黑白方块

时间复杂度:O(n * n * n)

代码

CPP
#include<bits/stdc++.h>
#define int long long
using namespace std;
char a[15][15];
signed main()
{
	int n,m,maxi=-1e9;
	cin>>n>>m;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
			cin>>a[i][j];
	for(int o=1;o<=n;o++)
	{	
		for(int i=1;i<=m;i++)
		{
			for(int j=1;j<=n;j++)
			{
				for(int k=1;k<=m;k++)
				{
					int sum=0;
					for(int l=o;l<=o+j-1;l++)
					{
						for(int r=i;r<=i+k-1;r++)
						{
							sum+=a[l][r]-'0';
						}
					}
					if(sum*2==j*k)
						maxi=max(maxi,(j*k));
				}
			}
		}
	}
	if(maxi==-1e9)
	{
		cout<<0;
		return 0;
	}
	cout<<maxi;
	return 0;
}

E

B4033 [语言月赛 202409] 考试

代码

CPP
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,x,y,r,a[1005],b[1005],c[1005];
int cmp(int x,int y)
{
	return x>y;
}
signed main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
		cin>>a[i];
	for(int i=1;i<=n;i++)
		cin>>b[i];
	for(int i=1;i<=n;i++)
	{
		if(a[i]>b[i])
			x++;
		else if(a[i]<b[i])
			y++;
		else if(a[i]==b[i])
			r++;
		c[i]=a[i]-b[i];
	}
	if(x>y)
		cout<<0;
	else
	{
		sort(c+1,c+n+1,cmp);
		int sum=0;
		for(int i=1;i<=n;i++)
		{
			if(c[i]==0)
			{
				sum++;
				x++;
				r--;
				if(x>y)
					break;
			}
			if(c[i]<0)
			{
				sum+=abs(c[i]);
				y--;
				if(x>y)
					break;
				sum++;
				x++;
				if(x>y)
					break;
			}
			
		}
		cout<<sum;
	}
	return 0;
}

F

[蓝桥杯 2022 省 B] 砍竹子

代码

CPP
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,a[200005],cnt[200005],o; 
int cmp(int x,int y)
{
	return x>y;
}
int d(int x)
{
	return sqrt(x/2+1);
}
signed main()
{
	cin>>n;
	int maxi=-1e9;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
		int l=a[i];
		while(l!=1)
		{
			l=d(l);
			cnt[i]++;
		}
		maxi=max(maxi,cnt[i]);
	}
	for(int j=maxi;j>=1;j--)
	{
		for(int i=1;i<=n;i++)
		{
			if(j==cnt[i] and a[i]!=a[i+1])
			{
				o++;
				cnt[i]--;
				a[i]=d(a[i]);
			}
			else if(j==cnt[i])
			{
				cnt[i]--;
				a[i]=d(a[i]);
			}
		}
	}
	cout<<o<<endl;
	return 0;
}

错误样例:

评论

0 条评论,欢迎与作者交流。

正在加载评论...