解题思路:

注意事项:
实在不会就暴力拆解。
参考代码:

#include<bits/stdc++.h>

using namespace std;

int sushu(int n)

{

    int k=sqrt(n);

    for(int i=3;i<=k;i=i+2)

    {

        if(n%i==0) return 0;

    }

    return n;

}

int main()

{

    int n,m;

    int a,b,c,d,e,f,g,h;

        cin>>n>>m;

        if(n%2==0) n++;

        for(int i=n;i<=m;i=i+2)

        {

            h=i/10000000;

            g=i/1000000%10;

            f=i/100000%10;

            e=i/10000%10;

            d=i/1000%10;

            c=i/100%10;

            b=i/10%10;

            a=i%10;

            if(sushu(i)!=0)

            {

                if(m<=11)

                cout<<sushu(i)<<endl;

                if(100<m&&m<1000)

                {

                    if(i<=11)

                cout<<sushu(i)<<endl;

                else if(a==c)

                    {

                        cout<<sushu(i)<<endl;

                    }

                }

                if(1000<=m&&m<10000)

                {

                    if(i<=11)

                cout<<sushu(i)<<endl;

                else if(100<i&&i<1000)

                    {

                        if(a==c)

                        cout<<sushu(i)<<endl;

                    }

                    else 

                    {

                        if(d==a&&b==c)

                        cout<<sushu(i)<<endl;

                    }

                }

                if(10000<=m&&m<100000)

                {

                    if(i<=11)

                cout<<sushu(i)<<endl;

                else if(100<i&&i<1000)

                    {

                        if(a==c)

                        cout<<sushu(i)<<endl;

                    }

                    else if(1000<=i&&i<10000)

                    {

                        if(d==a&&b==c)

                        cout<<sushu(i)<<endl;

                    }

                    else 

                    {

                        if(a==e&&b==d)

                        {

                            cout<<sushu(i)<<endl;

                        }

                    }

                }

                if(100000<=m&&m<1000000)

                {

                    if(i<=11)

                    cout<<sushu(i)<<endl;

                    else if(100<i&&i<1000)

                    {

                        if(a==c)

                        cout<<sushu(i)<<endl;

                    }

                    else if(1000<=i&&i<10000)

                    {

                        if(d==a&&b==c)

                        cout<<sushu(i)<<endl;

                    }

                    else if(10000<=i&&i<100000)

                    {

                        if(a==e&&b==d)

                        {

                            cout<<sushu(i)<<endl;

                        }

                    }

                    else 

                    {

                          if(a==f&&b==e&&c==d)

                        {

                            cout<<sushu(i)<<endl;

                        }  

                    }

                }

                if(1000000<=m&&m<10000000)

                {

                    if(i<=11)

                    cout<<sushu(i)<<endl;

                    else if(100<i&&i<1000)

                    {

                        if(a==c)

                        cout<<sushu(i)<<endl;

                    }

                    else if(1000<=i&&i<10000)

                    {

                        if(d==a&&b==c)

                        cout<<sushu(i)<<endl;

                    }

                    else if(10000<=i&&i<100000)

                    {

                        if(a==e&&b==d)

                        {

                            cout<<sushu(i)<<endl;

                        }

                    }

                    else if(100000<=i&&i<1000000)

                    {

                          if(a==f&&b==e&&c==d)

                        {

                            cout<<sushu(i)<<endl;

                        }  

                    }

                    else

                    {

                        if(a==g&&b==f&&c==e)

                        cout<<sushu(i)<<endl;

                    }

                }

                if(10000000<=m&&m<100000000)

                {

                    if(i<=11)

                    cout<<sushu(i)<<endl;

                    else if(100<i&&i<1000)

                    {

                        if(a==c)

                        cout<<sushu(i)<<endl;

                    }

                    else if(1000<=i&&i<10000)

                    {

                        if(d==a&&b==c)

                        cout<<sushu(i)<<endl;

                    }

                    else if(10000<=i&&i<100000)

                    {

                        if(a==e&&b==d)

                        {

                            cout<<sushu(i)<<endl;

                        }

                    }

                    else if(100000<=i&&i<1000000)

                    {

                          if(a==f&&b==e&&c==d)

                        {

                            cout<<sushu(i)<<endl;

                        }  

                    }

                    else if(1000000<=i&&i<10000000)

                    {

                        if(a==g&&b==f&&c==e)

                        cout<<sushu(i)<<endl;

                    }

                    else

                    {

                        if(a==h&&b==g&&c==f&&d==e)

                        cout<<sushu(i)<<endl;

                    }

                }

            }

        }

    

    return 0;

}


点赞(0)
 

0.0分

2 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 2 条评论

凌先生 2年前 回复TA
367行代码!!!!楼主辛苦了!!!
神龙大侠 2年前 回复TA
orz