提交时间:2024-05-03 09:39:06

运行 ID: 46312

#include<bits/stdc++.h> using namespace std; int cnt; bool ex37(int n){ while(n){ if(n%10==3||n%10==7){ return false; } n/=10; } return true; } void DFS(int n,int k,int a){ if(k==1){ if(n>=a){ cnt+=ex37(n); } return; } for(int i=a;i*k<=n;i++){ if(ex37(i)){ DFS(n-i,k-1,i+1); } } } int main(){ int n; cin>>n; DFS(n,3,1); cout<<cnt; return 0; }