文章
4
粉丝
238
获赞
4
访问
41.4k
样例 4 5 10,穷举出来的状态有10种
<0,0,10>
<4,0,6><0,4,6>
<4,4,2><3,5,2>
<0,5,5><4,1,5>
<0,1,9><1,0,9>
<4,5,1>
<1,5,4><4,2,4>
<0,2,8><2,0,8>
<2,5,3><4,3,3>
<0,3,7><3,0,7>
C一共10种,输出不为10的都错了
样例4 9 20 穷举结果有14种
0 0 20
4 0 16
0 4 16
4 4 12
0 8 12
4 8 8
3 9 8
0 9 11
4 5 11
0 5 15
4 1 15
0 1 19
1 0 19
4 9 7
1 9 10
4 6 10
0 6 14
4 2 14
0 2 18
2 0 18
2 9 9
4 7 9
0 7 13
4 3 13
0 3 17
3 0 17
原以为有什么数学方法,还是写个穷举验证下,发现一大半过不了这两个样例
穷举代码:
#include <iostream>
#include <string.h>
#include <set>
using namespace std;
struct Node{
Node(const short* ss){
a=ss[0];b=ss[1];c=ss[2];
}
Node(){
}
short a;
short b;
short c;
bool operator<(const Node& nd)const{
if(a<nd.a) return true;
if(a==nd.a){
if(b<nd.b) return true;
if(b==nd.b)
return c < nd.c;
}
return fals...
登录后发布评论
哈哈,因为数据加强了,以前有些代码过不了了