C++ Solution
\nclass Solution {\npublic:\n    bool isPrime(int x)\n    {\n        if (x <= 2)\n        {\n            return (x == 2);\n        }\n        int upper_limit = 
```\nclass Solution {\npublic:\n    bool isPrime(int x)\n    {\n        if (x <= 2)\n        {\n            return (x == 2);\n        }\n        int upper_limit = sqrt(x);\n        for (int i = 2; i <= upper_limit; ++i)\n        {\n            if (x % i == 0)\n            {\n                return false;\n            }\n        }\n        return true;\n    }\n    \n    int primePalindrome(int N) {\n        if (N >= 8 && N <= 11)\n        {\n            return 11;\n        }\n        int res;\n        for (int i = 1; i < 1e5; ++i)\n        {\n            std::string s = to_string(i);\n            std::string t(s.rbegin(), s.rend());\n            s += t.substr(1);\n            int tmp_num = stoi(s);\n            if (tmp_num >= N && isPrime(tmp_num))\n            {\n                res = tmp_num;\n                break;\n            }\n        }\n        return res;\n    }\n};\n```\n1. \u8D28\u6570\u7684\u68C0\u67E5\uFF0C\u53EA\u68C0\u67E5\u4ECE2\u5230sqrt(x)\uFF0C\u4F1A\u4E0D\u4F1A\u6709\u53EF\u4EE5\u6574\u9664x\u7684\u6570\u5B58\u5728\uFF0C\u56E0\u4E3A\u540E\u4E00\u534A\u80AF\u5B9A\u4E0D\u4F1A\uFF1B\n2. \u53EA\u68C0\u67E5\u957F\u5EA6\u662F\u5947\u6570\u7684\u56DE\u6587\u6570\uFF0C\u56E0\u4E3A\u957F\u5EA6\u662F\u5076\u6570\u7684\u56DE\u6587\u6570\u4E00\u5B9A\u4F1A\u88AB11\u6574\u9664\uFF1B\n3. \u7279\u6B8A\u60C5\u51B5\uFF1A\u5728[8, 11]\u8303\u56F4\u5185\uFF0C\u8FD4\u56DE11\uFF1B\n4. \u91C7\u7528\u5148\u62FC\u63A5\u51FA\u56DE\u6587\u6570\uFF0C\u518D\u5224\u65AD\u662F\u5426\u6EE1\u8DB3\u8981\u6C42\uFF0C\u4E0D\u5C0F\u4E8EN\u4E14\u662F\u8D28\u6570\u3002
[]