题意:
用1到n算24点。
易证1~3无解。
易证当n有解时n + 2有解。*((n + 2) - (n + 1))即可。
然后手动构造一下4和5即可。
1 #include2 3 int main() { 4 int n; 5 scanf("%d", &n); 6 if(n <= 3) { 7 printf("NO"); 8 return 0; 9 }10 printf("YES\n");11 if(n & 1) {12 printf("4 * 5 = 20\n");13 printf("2 + 3 = 5\n");14 printf("5 - 1 = 4\n");15 printf("20 + 4 = 24\n"); 16 for(int i = 6; i < n; i += 2) {17 printf("%d - %d = 1\n", i + 1, i);18 printf("24 * 1 = 24\n");19 }20 }21 else {22 printf("1 * 2 = 2\n");23 printf("2 * 3 = 6\n");24 printf("6 * 4 = 24\n");25 for(int i = 5; i < n; i += 2) {26 printf("%d - %d = 1\n", i + 1, i);27 printf("24 * 1 = 24\n");28 }29 }30 return 0;31 }