#include <iostream>
#include <cstdio>
#include <string>
#include <vector>
#include <algorithm>
#include <cstdlib>
using namespace std;
int a[9] = {1,2,3,4,5,6,7,8,9};
int ansCnt;
void dfs(int i, int sum, int k)
{
if ( i == 9 )
{
if( sum == k )
ansCnt++;
return ;
}
int num = 0;
int j;
for(j=i; j<9; j++)
{
num = a[j] + num * 10;
dfs(j+1, sum + num , k);
dfs(j+1, sum - num , k);
}
}
int main()
{
int num;
cin>>num;
ansCnt = 0;
int i;
int sum = 0;
for(i=0; i<9; i++)
{
sum = a[i] + sum*10;
//cout<<sum<<endl;
dfs(i+1, sum, num);
}
cout<<ansCnt;
return 0;
}
#include <iostream>
#include <cstdio>
#include <string>
#include <cstring>
#include <cstdlib>
using namespace std;
int getSec(string& s)
{
if( s.length() < 6 || s.length() > 10 )
return -1;
int a[3] = {0};
int i;
for(i=0; i<s.length(); i++)
{
if( s[i] >='0' && s[i] <='9' )
a[0] ++;
else
if( ( s[i] >='a' && s[i] <= 'z' ) || ( s[i] >='A' && s[i] <= 'Z' ) )
a[1] ++;
else
if( s[i] == '~' || s[i] == '!' || s[i] == '@' || s[i] == '#' || s[i] == '$' || s[i] == '%' )
a[2] ++;
else
return -1;
}
int cnt = 0;
for(i=0; i<3; i++)
if ( a[i] > 0 )
cnt ++;
return cnt;
}
bool isCon(string& s, int i)
{
if( s[i] == s[i+1] && s[i+1] == s[i+2] )
return true;
if( s[i] + 1 == s[i+1] && s[i+1] + 1 == s[i+2] )
return true;
if( s[i] - 1 == s[i+1] && s[i+1] - 1 == s[i+2] )
return true;
return false;
}
bool isSec3(string& s)
{
int cnt = 0;
for(int i=0; i<=s.length()-3; i++)
if( isCon( s, i ) )
return false;
return true;
}
int main()
{
string s;
cin>>s;
int ans = getSec(s);
if( ans == 3 )
{
if( isSec3( s ) )
cout<<3;
else
cout<<2;
}
else
cout<<ans;
return 0;
}
#include <cstdio>
#include <string>
#include <vector>
#include <algorithm>
#include <cstdlib>
using namespace std;
int a[9] = {1,2,3,4,5,6,7,8,9};
int ansCnt;
void dfs(int i, int sum, int k)
{
if ( i == 9 )
{
if( sum == k )
ansCnt++;
return ;
}
int num = 0;
int j;
for(j=i; j<9; j++)
{
num = a[j] + num * 10;
dfs(j+1, sum + num , k);
dfs(j+1, sum - num , k);
}
}
int main()
{
int num;
cin>>num;
ansCnt = 0;
int i;
int sum = 0;
for(i=0; i<9; i++)
{
sum = a[i] + sum*10;
//cout<<sum<<endl;
dfs(i+1, sum, num);
}
cout<<ansCnt;
return 0;
}
#include <iostream>
#include <cstdio>
#include <string>
#include <cstring>
#include <cstdlib>
using namespace std;
int getSec(string& s)
{
if( s.length() < 6 || s.length() > 10 )
return -1;
int a[3] = {0};
int i;
for(i=0; i<s.length(); i++)
{
if( s[i] >='0' && s[i] <='9' )
a[0] ++;
else
if( ( s[i] >='a' && s[i] <= 'z' ) || ( s[i] >='A' && s[i] <= 'Z' ) )
a[1] ++;
else
if( s[i] == '~' || s[i] == '!' || s[i] == '@' || s[i] == '#' || s[i] == '$' || s[i] == '%' )
a[2] ++;
else
return -1;
}
int cnt = 0;
for(i=0; i<3; i++)
if ( a[i] > 0 )
cnt ++;
return cnt;
}
bool isCon(string& s, int i)
{
if( s[i] == s[i+1] && s[i+1] == s[i+2] )
return true;
if( s[i] + 1 == s[i+1] && s[i+1] + 1 == s[i+2] )
return true;
if( s[i] - 1 == s[i+1] && s[i+1] - 1 == s[i+2] )
return true;
return false;
}
bool isSec3(string& s)
{
int cnt = 0;
for(int i=0; i<=s.length()-3; i++)
if( isCon( s, i ) )
return false;
return true;
}
int main()
{
string s;
cin>>s;
int ans = getSec(s);
if( ans == 3 )
{
if( isSec3( s ) )
cout<<3;
else
cout<<2;
}
else
cout<<ans;
return 0;
}