本人比较菜,就做了3填空,2个编程签到题,还有一个暴力写了写,能过个测试样例把哈哈哈
一个门牌制作,不写了,就循环判断
一个蛇形填数,找了找规律
一个七段码深搜写了写,也没题目,80也不知道对不。。。
#include<iostream>
#include<set>
#include<cstdio>
using namespace std;
bool vis[10];
int g[10][10];
int b[10];
set<int> st;
int sum=0;
void dfs(int cnt,int k,int step,int index)
{
if(step==cnt)
{
int c[10];
for(int i=0;i<cnt;i++) c[i]=b[i];
for(int i=0;i<cnt-1;i++)
{
int t=i;
for(int j=i;j<cnt;j++)
{
if(c[t]>c[j]) t=j;
}
int tp=c[i];
c[i]=c[t];
c[t]=tp;
}
int num=0;
for(int i=0;i<cnt;i++)
{
num=num*10+c[i];
}
st.insert(num);
return;
}
for(int i=1;i<=7;i++)
{
if(!vis[i]&&g[index][i]==1)
{
vis[i]=true;
b[step]=i;
dfs(cnt,k,step+1,i);
vis[i]=false;
}
}
}
int main()
{
g[1][2]=g[2][1]=1;
g[1][6]=g[6][1]=1;
g[2][7]=g[7][2]=1;
g[6][7]=g[7][6]=1;
g[2][3]=g[3][2]=1;
g[5][6]=g[6][5]=1;
g[3][7]=g[7][3]=1;
g[5][7]=g[7][5]=1;
g[3][4]=g[4][3]=1;
g[4][5]=g[5][4]=1;
for(int cnt=1;cnt<=7;cnt++)
{
for(int i=1;i<=7;i++)
{
b[0]=i;
vis[i]=true;
dfs(cnt,i,1,i);
for(int j=1;j<=7;j++) vis[j]=false;
}
sum+=st.size();
st.clear();
}
cout<<sum<<endl;
return 0;
}
一个成绩分析,最小值最大值平均值
一个单词分析,都是小写字母,a-z映射到0-25呗,然后统计下出现次数最多的,并且字典序最小
还有个子串分值和,哈哈哈,暴力写了些,能过一个样例是一个把哈哈哈