#include <bits/stdc++.h>
#include <string>
using namespace std;
int main() {
int p, q, prime = 0, palindrome = 0, maxExists = -1;
cin >> p >> q;
for (int i = 1; i <= 1200000; i++) {
string palCheck = to_string(i);
if (i > 1) {
bool is = true;
for (int j = 2; j * j <= i; j++) {
if (i % j == 0)
is = false;
}
if (is)
prime++;
}
int n = palCheck.size();
bool isPal = true;
for (int z = 0; z < palCheck.size(); z++) {
if (palCheck[n - z - 1] != palCheck[z])
isPal = false;
}
if (isPal)
palindrome++;
if (prime * q <= palindrome * p) {
maxExists = i;
}
}
if (maxExists == -1)
cout << "Palindromic tree is better than splay tree";
else
cout << maxExists;
return 0;
}
97. Interleaving String | 543. Diameter of Binary Tree |
124. Binary Tree Maximum Path Sum | 1465. Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts |
501A - Contest | 160A- Twins |
752. Open the Lock | 1535A - Fair Playoff |
1538F - Interesting Function | 1920. Build Array from Permutation |
494. Target Sum | 797. All Paths From Source to Target |
1547B - Alphabetical Strings | 1550A - Find The Array |
118B - Present from Lena | 27A - Next Test |
785. Is Graph Bipartite | 90. Subsets II |
1560A - Dislike of Threes | 36. Valid Sudoku |
557. Reverse Words in a String III | 566. Reshape the Matrix |
167. Two Sum II - Input array is sorted | 387. First Unique Character in a String |
383. Ransom Note | 242. Valid Anagram |
141. Linked List Cycle | 21. Merge Two Sorted Lists |
203. Remove Linked List Elements | 733. Flood Fill |