华师一附中OI组
标题:
周日下午精英版程序集
[打印本页]
作者:
admin
时间:
2022-3-27 14:14
标题:
周日下午精英版程序集
复习:
1、约瑟夫问题
作者:
admin
时间:
2022-3-27 14:14
#include<bits/stdc++.h>
using namespace std;
const int mx=10;
int a[mx],i,s,k;
int main()
{
for (i=1; i<=8; i++) a[i]=1;
i=s=k=0;
while (k<8)
{
i++;
if (i>8) i=1;
s+=a[i];
if (s==5)
{
cout<<i<<' ';
a[i]=0;
s=0;
k++;
}
}
return 0;
}
复制代码
作者:
admin
时间:
2022-3-27 14:16
#include<bits/stdc++.h>
using namespace std;
const int mx=110;
int a[mx],i,j;
int main()
{
for (i=2; i<=100; i++) a[i]=1;
for (i=2; i*i<=100; i++)
if (a[i]==1)
for (j=i*i; j<=100; j+=i) a[j]=0;
for (i=2; i<=100; i++) if (a[i]==1) cout<<i<<' ';
return 0;
}
复制代码
作者:
admin
时间:
2022-3-27 14:54
#include<bits/stdc++.h>
using namespace std;
int a[10],i,k,x1,x2,x3;
bool check()// 检查a数组中1-9 是否都出现
{
bool b=1;
for (i=1; i<=9; i++) if (a[i]!=1) b=0;
return b;
}
int main()
{
for (x1=123; x1<=333; x1++)
{
for (i=1; i<=9; i++) a[i]=0; // 空的点名表
x2=x1+x1,x3=x1+x2;
k=x1/100%10,a[k]++;// 画正字点名
k=x1/10%10,a[k]++;// 画正字点名
k=x1/1%10,a[k]++;// 画正字点名
k=x2/100%10,a[k]++;// 画正字点名
k=x2/10%10,a[k]++;// 画正字点名
k=x2/1%10,a[k]++;// 画正字点名
k=x3/100%10,a[k]++;// 画正字点名
k=x3/10%10,a[k]++;// 画正字点名
k=x3/1%10,a[k]++;// 画正字点名
if (check()) cout<<x1<<' '<<x2<<' '<<x3<<endl;
}
return 0;
}
复制代码
作者:
admin
时间:
2022-3-27 15:01
#include<bits/stdc++.h>
using namespace std;
int a[10],i,k,x1,x2;
bool check()// 检查a数组中1-9 是否都出现
{
bool b=1;
for (int i=0; i<=9; i++) if (a[i]!=0) b=0;
return b;
}
int main()
{
cin>>x1>>x2;
for (i=0; i<=9; i++) a[i]=0;
while (x1>0)
{
k=x1%10,x1=x1/10;
a[k]++;
}
while (x2>0)
{
k=x2%10,x2=x2/10;
a[k]--;
}
if (check()) cout<<"Yes";
else cout<<"No";
return 0;
}
复制代码
欢迎光临 华师一附中OI组 (http://hsyit.cn/)
Powered by Discuz! X3.2