版权声明:原创,未经作者允许禁止转载 https://blog.csdn.net/Mr_wuyongcong/article/details/88361763
前言
成绩
是有算别人的
正题
祖孙询问【 】
链接:
https://blog.csdn.net/Mr_wuyongcong/article/details/88359248
比赛【数学 统计】
连接:
https://blog.csdn.net/Mr_wuyongcong/article/details/88359658
数字【数位 统计 容斥】
连接:
https://blog.csdn.net/Mr_wuyongcong/article/details/88361756
T2 暴力
#include<cstdio>
#define ll long long
using namespace std;
ll n,a[50010],b[50010],ans1,ans2;
int main()
{
scanf("%lld",&n);
for(ll i=1;i<=n;i++)
scanf("%lld",&a[i]);
for(ll i=1;i<=n;i++)
scanf("%lld",&b[i]);
for(ll i=1;i<=n;i++)
for(ll j=1;j<=n;j++)
{
ll w=(a[i]-b[j])*(a[i]-b[j]);
if(a[i]>b[j]) ans1+=w;
else ans2+=w;
}
printf("%.1lf",(double)(ans1-ans2)/n);
}
T3 暴力
#include<cstdio>
#include<cstring>
using namespace std;
const int N=1010,XJQ=999983;
int n,Z,ans,m,a[12],c[12];
char s[12];
void dfs(int x,int ys,int ds)
{
if(x==2*n){
if(ys!=0&&ds!=0)
return;
//for(int i=0;i<2*n;i++)
// printf("%d",c[i]);
//putchar('\n');
ans=(ans+1)%XJQ;
return;
}
for(int i=1;i<=m;i++)
{
c[x]=a[i];
dfs(x+1,ys+a[i]*((x%2)?1:-1),ds+a[i]*((x>=n)?1:-1));
}
}
int main()
{
scanf("%d",&n);
scanf("%s",s+1);
//double star=clock();
m=strlen(s+1);
for(int i=1;i<=m;i++)
a[i]=s[i]-'0';
dfs(0,0,0);
printf("%d",ans);
}
总结
看题预估分
做题预估分
实际分数
明显
,直接切掉
开始不会,后来发现了全排列的性质,然后推一下公式就切掉了
之后死刚
,然后公式全靠猜,结果10分
尾声
没有尾声