1class Solution {2public:3bool simplified(int n, int i) {4while (i > 0) {5n -= i;6if (i > n) swap(n, i);7}8if (n > 1)9return false;10else11return true;12}1314vector<string> simplifiedFractions(int n) {15vector<string> ans;16while (n > 1) {17int i = 1;18while (i < n) {19if (simplified(n, i)) {20string fraction;21int num = i;22while (num > 0) {23fraction.push_back(num % 10 + '0');24num /= 10;25}26fraction.push_back('/');27num = n;28while (num > 0) {29fraction.push_back(num % 10 + '0');30num /= 10;31}32if (i > 9) swap(fraction[0], fraction[1]);33if (n > 99)34swap(fraction[fraction.size() - 1], fraction[fraction.size() - 3]);35else if (n > 9)36swap(fraction[fraction.size() - 1], fraction[fraction.size() - 2]);37ans.push_back(fraction);38}39i++;40}41n--;42}43return ans;44}45};