题目大意:给出一个数n,该数由大于0的四个不同数组成,其中有三个数需满足 每个数都由两个不等的质数相乘 构成,若能找到的四个数,输出YES,以及这四个数,若不行,输出NO.
Input
7 7 23 31 36 44 100 258
Output
NO NO YES 14 10 6 1 YES 5 6 10 15 YES 6 7 10 21 YES 2 10 33 55 YES 10 21 221 6
#include <stdio.h> int main(){ int t,n,a,b,c,d; scanf("%d",&t); while(t--){ scanf("%d",&n); a=6;//2*3 b=10;//2*5 c=14;//2*7 d=a+b+c; d=n-d; if(d==a||d==b||d==c){ c=15,d-=1;//15=3*5 printf("YES\n"); printf("%d %d %d %d\n",a,b,c,d); }else if(d>0){ printf("YES\n"); printf("%d %d %d %d\n",a,b,c,d); }else printf("NO\n"); } return 0; }