月赛题解。

F题

#include<stdio.h>

int fb(int x);

int main()

{

int n,s;

     while(scanf("%d",&n)!=EOF)

 {

      s=fb(n);

  printf("%d",s);

 }

 return 0;

   

}

int fb(int x)

{

int z;

if(x==1)

z=1;

if(x==2)

z=2;

if(x>2)

z=fb(x-1)+fb(x-2);

return z;

}

I题

include<stdio.h>
int ss(int x)
{
    int i;
    if(x<=1)return 0;
    for(i=2;i<x;i++)
        if(x%i==0) 
        {
            return 0;
            break;
        }
        return x;
}
void main()
{
    int n,i,z=0;
    scanf("%d",&n);
    for(i=2;i<=n-2;i++)
    {
        if(ss(i)&&ss(i+2))
        {
            z+=i;
            printf("%d %d\n",i,i+2);
        }
    
    }
    if(z==0)
        printf("empty");

}

D题

include<stdio.h>

void main()

{

    int n,a[1000],i,wu= 0, ling = 0,gs;

    scanf("%d",&n);

    for (i = 0; i < n; i++)

    {

       scanf("%d",&a[i]);       

        if(a[i]== 5)

            wu++;     

        if(a[i]==0)

            ling++;   

    }

    if(wu/9!=0)

    {

         gs= wu/9;

        for(;gs>0;gs--)      

           printf("555555555");

        for(;ling>0;ling--)

         printf("0");

     }

    else

        if(ling)

            printf("0");

        else

            printf("-1");

  }

G题

#include<iostream>

#include<algorithm>

using namespace std;

void main()

{

int n, a, b, ks=1,cs=0,i, d[265];

     scanf("%d%d%d",&n,&a,&b);

for(i=1;i<=n;i++)

{

d[i]=i;

}

   

while(ks)

{

cs++;                     

for(i=ks;i<=n;i+=2)

{

if((d[i]==a||d[i]==b)&&(d[i+1]==a||d[i+1]==b))

{

if(ks==n-1)

{

printf("Final!\n");

}

else

{

printf("%d\n",cs);

}

break;

}

if(d[i]==a||d[i]==b)  

{

d[i+1]=0;

}

else

if(d[i+1]==a||d[i+1]==b)

d[i] = 0;

    else

{

d[i]>d[i+1]?d[i+1]=0:d[i]=0;  

}

}

if(i<= n)break;

sort(d+1,d+1+n);   

ks=ks+(n-ks+1)/2;   

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值