#include <bits/stdc++.h> using namespace std; int main() { int coun=0; for(int a=1;a<=9;a++) for(int b=1;b<=9;b++) for(int c=1;c<=9;c++) for(int d=1;d<=9;d++) for(int e=1;e<=9;e++) for(int f=1;f<=9;f++) for(int g=1;g<=9;g++) for(int h=1;h<=9;h++) for(int i=1;i<=9;i++) { if(a!=b && a!=c && a!=d && a!=e && a!=f && a!=g && a!=h && a!=i && b!=c && b!=d && b!=e && b!=f && b!=g && b!=h && b!=i && c!=d && c!=e && c!=f && c!=g && c!=h && c!=i && d!=e && d!=f && d!=g && d!=h && d!=i && e!=f && e!=g && e!=h && e!=i && f!=g && f!=h && f!=i && g!=h && g!=i && h!=i && (a+(double)b/c+(double)(d*100+e*10+f)/(double)(g*100+h*10+i))==10) coun++; } cout<<coun<<endl; }
看别人都用的next_permutation,蒟蒻看不懂,想着用暴力写写就能出来,结果不对,最后在除法前都加了一个double,结果对了,但是加了和没加之前的四舍五入的结果也差的太远了吧......