0至9相加等于10可做5题,每个数字只能用一次,请问如何做?

来源:百度知道 编辑:UC知道 时间:2024/06/04 20:18:42

如果每个答案数字只能用一次
9 1
8 2
7 3
6 4
7 2 1
6 3 1
5 4 1
5 3 2
4 3 2 1

用最直接的办法:
#include<stdio.h>
#include <set>
#include <math.h>
using namespace std;
void main()
{
set<int> temp;
set<int> results;
int a[10];
int i[10];
int j;
for (j=0; j<10; j++)
a[j] = j;

for (i[0]=0; i[0]<10; i[0]++)
{
for (i[1]=0; i[1]<10; i[1]++)
{
for (i[2]=0; i[2]<10; i[2]++)
{
for (i[3]=0; i[3]<10; i[3]++)
{
for (i[4]=0; i[4]<10; i[4]++)
{
for (i[5]=0; i[5]<10; i[5]++)
{
for (i[6]=0; i[6]<10; i[6]++)
{
for (i[7]=0; i[7]<10; i[7]++)
{
for (i[8]=0; i[8]<10; i[8]++)
{
for (i[9]=0; i[9]<10; i[9]++)
{
i