【考题解析】2021年9月海淀区中小学信息学奥林匹克竞赛小学组试题解析
点击领取>>>信息学奥赛 NOI、NOIP、各区CSP-J/S初赛复赛试题&蓝桥杯、信息杯、智慧杯编程试卷& 海淀区科普节、程序设计大赛
#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int count=0;
while(n!=0)
{
if(n%10==8)
{
count++;
}
n/=10;
}
cout<<count;
return 0;
}
#include<iostream>
using namespace std;
int gcd(int x,int y)
{
if(x%y==0)
{
return y;
}
else
{
return gcd(y,x%y);
}
}
int main()
{
int a,b,x,y;
cin>>a>>b>>x>>y;
int g=gcd(x,y);
x/=g;
y/=g;
g=a/x;
if(b/y<g)
{
g=b/y;
}
cout<<x*g<<' '<<y*g;
return 0;
}
#include<iostream>
#include<algorithm>
using namespace std;
int a[200001];
bool cmp(int a,int b)
{
return a>b;
}
int main()
{
int t;
cin>>t;
while(t--)
{
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
}
sort(a,a+n,cmp);
int A=0,B=0;
for(int i=0;i<n;i++)
{
if(i&1&&!(a[i]&1))
{
A+=a[i];
}
if(!(i&1)&&a[i]&1)
{
B+=a[i];
}
}
if(A>B)
{
cout<<"A";
}
else if(A<B)
{
cout<<"B";
}
else
{
cout<<"C";
}
}
return 0;
}
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
long long n,k,M,D;
cin>>n>>k>>M>>D;
long long res=0;
for(int d=1;d<=D;d++)
{
if((n-1)/k<d-1)
{
break;
}
long long y=(d-1)*k+1;
res=max(res,min(M,n/y)*d);
}
cout<<res;
return 0;
}
#include<iostream>
#include<cmath>
#include<map>
using namespace std;
map<int,int> vis;
int n,a[100010],ans;
int gcd(int x,int y)
{
if(x%y==0)
{
return y;
}
else
{
return gcd(y,x%y);
}
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
for(int i=1;i<=n;i++)
{
vis[a[i]]++;
if(abs(a[i]-a[i+1])<=1)
{
++ans;
vis.clear();
continue;
}
vis[a[++i]]++;
int j,d=abs(a[i]-a[i-1]);
for(int j=i+1;j<=n;j++)
{
d=gcd(abs(a[j]-a[j-1]),d);
if(d==1||vis[a[j]]>0)
{
break;
}
vis[a[j]]++;
}
ans++;
vis.clear();
i=j-1;
}
cout<<ans;
return 0;
}
微信公众号搜索: 北京小学学习资料 家长升学指南 关注公众号,获取最新资讯!
扫码添加“家长论坛”微信好友(微信号 16619908263)
获取信息学奥赛 NOI、NOIP、各区CSP-J/S试题&蓝桥杯、智慧杯、 海淀区科普节真题
咨询信息学奥赛 NOI、NOIP、各区CSP-J/S试题&蓝桥杯、智慧杯、 海淀区科普节政策请拨打电话 16619908263 (同微信号)