题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1015
看代码就知道这道题有多水
代码:
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <algorithm>
#include <cstring>
using namespace std;
char s[20];
int target;
int a[20];
int target;
int a[20];
bool cmp(int a,int b)
{
return a > b;
}
return a > b;
}
int main()
{
while(~scanf("%d%s",&target,s))
{
if(target == 0 && strcmp(s,"END") == 0)
break;
int len = strlen(s);
for(int i = 0;i < strlen(s);++i)
{
a[i] = s[i] - 'A' + 1;
}
sort(a,a + strlen(s),cmp);
int flag = 0;
for(int i = 0;i < len;++i)
{
if(flag) break;
for(int j = 0;j < len;++j)
{
if(flag) break;
for(int k = 0;k < len;++k)
{
if(flag) break;
for(int g = 0;g < len;++g)
{
if(flag) break;
for(int l = 0;l < len;++l)
{
if(i!=j&&i!=k&&i!=g&&i!=l&&j!=k&&j!=g&&j!=l&&k!=g&&k!=l&&g!=l)
{
if(a[i]-a[j]*a[j]+a[k]*a[k]*a[k]-a[g]*a[g]*a[g]*a[g]+a[l]*a[l]*a[l]*a[l]*a[l] == target)
{
printf("%c%c%c%c%c\n",a[i]+'A' - 1,a[j]+'A'-1,a[k]+'A'-1,a[g]+'A'-1,a[l]+'A'-1);
flag = 1;
break;
}
}
}
}
}
}
}
if(!flag)
printf("no solution\n");
}
return 0;
}
while(~scanf("%d%s",&target,s))
{
if(target == 0 && strcmp(s,"END") == 0)
break;
int len = strlen(s);
for(int i = 0;i < strlen(s);++i)
{
a[i] = s[i] - 'A' + 1;
}
sort(a,a + strlen(s),cmp);
int flag = 0;
for(int i = 0;i < len;++i)
{
if(flag) break;
for(int j = 0;j < len;++j)
{
if(flag) break;
for(int k = 0;k < len;++k)
{
if(flag) break;
for(int g = 0;g < len;++g)
{
if(flag) break;
for(int l = 0;l < len;++l)
{
if(i!=j&&i!=k&&i!=g&&i!=l&&j!=k&&j!=g&&j!=l&&k!=g&&k!=l&&g!=l)
{
if(a[i]-a[j]*a[j]+a[k]*a[k]*a[k]-a[g]*a[g]*a[g]*a[g]+a[l]*a[l]*a[l]*a[l]*a[l] == target)
{
printf("%c%c%c%c%c\n",a[i]+'A' - 1,a[j]+'A'-1,a[k]+'A'-1,a[g]+'A'-1,a[l]+'A'-1);
flag = 1;
break;
}
}
}
}
}
}
}
if(!flag)
printf("no solution\n");
}
return 0;
}