问题描述
果果有 张卡片,每 张卡片上有一个数字 。果果在里面选出了 张,按照某种顺序依次排列成一个数。
比如果果选出了 这三张卡片,果果就可以排列成 这五个数。
你需要帮果果求出对于所有选出 张卡片的方案,果果总共能拼成多少种不同的数字。
输入格式
第一行两个整数 ,表示卡片的个数和选出卡片的张数。
接下来一行 个空格分隔的整数 ,表示卡片上的数字。
输出格式
输出一行一个整数,表示果果总共能拼成多少种不同的数字。
样例输入 1
3 3
3 13 1
样例输出
5
这样的题还用说吗(民间数据),直接string+DFS就可以了…
#include<iostream>
#include<string.h>
#include<sstream>
using namespace std;
typedef long long ll;
const ll N=1e8+10;
ll n,m,f[N],vis[100],ans;
string s[11],a[5];
ll solve(string ss){
stringstream stream;
ll n;
stream<<ss;
stream>>n;
return n;
string evlos(ll x){
stringstream stream;
stream<<x;
string sss;
stream>>sss;
return sss;
}
ll print(){
stringstream stream;
for(int i=1;i<=m;i++) stream<<a[i];
ll y;
stre