专栏文章
12.13日集训
个人记录参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @miqs6x8l
- 此快照首次捕获于
- 2025/12/04 09:52 3 个月前
- 此快照最后确认于
- 2025/12/04 09:52 3 个月前
| 错误原因 | 分数 | |
|---|---|---|
| P5737 | 无 | 100 |
| P3805 | 无 | 100 |
| 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 条评论,欢迎与作者交流。
正在加载评论...