Problem C: 分成整数Reserved
Memory Limit:128 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:12
Solved:8
Description
给定一个正整数N,然后将N分解成3个正整数之和,计算出共有多少种符合要求的分解方法.要求:
1) 分解的3个正整数各不相同;
2) 分解的三个正整数中都不含数字3和7.
如:N为8, 可分解为(1,1,6), (1,2,5), (1,3,4), (2,2,4), (2,3,3),
其中满足要求的分解方法有1种,为(1,2,5) .
1) 分解的3个正整数各不相同;
2) 分解的三个正整数中都不含数字3和7.
如:N为8, 可分解为(1,1,6), (1,2,5), (1,3,4), (2,2,4), (2,3,3),
其中满足要求的分解方法有1种,为(1,2,5) .
Input
输入一个正整数N(5<N<501), 表示要分解的正整数
Output
输出一个整数,表示共有多少种符合要求的分解方法.
Sample Input Copy
8
Sample Output Copy
1
HINT
把这个题看成两部分:
1.将输入的正整数拆分成三个不相同的正整数的和;
2.判断这三个整数是否含有数字3或7。
第一部分可通过枚举实现将三个数设为i,j,n-i-j,保证依次增大,则枚举i即可完成枚举。
第二部分可通过子函数来判断。
同时,也可以用深度搜索Dfs解决问题。
1.将输入的正整数拆分成三个不相同的正整数的和;
2.判断这三个整数是否含有数字3或7。
第一部分可通过枚举实现将三个数设为i,j,n-i-j,保证依次增大,则枚举i即可完成枚举。
第二部分可通过子函数来判断。
同时,也可以用深度搜索Dfs解决问题。