萌新求助 #2 wa
  • 板块P1246 编码
  • 楼主XuanMing
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/2/25 12:44
  • 上次更新2024/2/25 13:04:44
查看原帖
萌新求助 #2 wa
1148322
XuanMing楼主2024/2/25 12:44
#include<bits/stdc++.h>
using namespace std;
string s;
int num;
int main()
{
	cin>>s;
	int n=s.size();
	for(int i=0;i<n;i++)
		if(!(s[i]>='a' and s[i]<='z'))
		{
			cout<<0;
			return 0;
		}
	/*开始枚举*/
	//长度为一 
	if(n==1)
	{
		for(int i='a';i<='z';i++)
		{
			num++;
			if(i==s[0])
			{
				cout<<num;	
				return 0;
			}
		}
	}
	num=26;
	//长度为二 
	if(n==2)
	{
		for(int i='a';i<='y';i++)
			for(int j=i+1;j<='z';j++)
			{
					num++;
					if(i==s[0] and j==s[1])
					{
						cout<<num;
						return 0;
					}
			}
	}
	num=351;
	//长度为三 
	if(n==3)
	{
		for(int i='a';i<='x';i++)
			for(int j=i+1;j<='y';j++)
				for(int k=j+1;k<='z';k++)
				{
					num++;		
					if(i==s[0] and j==s[1] and k==s[2])
					{
						cout<<num;
						return 0;						
					}			
				}
	}
	num=2951;
	//长度为四 
	if(n==4)
	{
		for(int i='a';i<='w';i++)
			for(int j=i+1;j<='x';j++)
				for(int k=j+1;k<='y';k++)
					for(int l=k+1;l<='z';l++)
					{
						num++;
						if(i==s[0] and j==s[1] and k==s[2] and l==s[3])
						{
							cout<<num;
							return 0;						
						}
					}
	}
	num=17901;
	//长度为五 
	if(n==5)
	{
		for(int i='a';i<='v';i++)
			for(int j=i+1;j<='w';j++)
				for(int k=j+1;k<='x';k++)
					for(int l=k+1;l<='y';l++)
						for(int m=l+1;m<='z';m++)
						{
							num++;
							if(i==s[0] and j==s[1] and k==s[2] and l==s[3] and m==s[4])
							{
								cout<<num;
								return 0;
							}
						}
	}
	num=83681;
	//长度为六 
	if(n==6)
	{
		for(int i='a';i<='u';i++)
			for(int j=i+1;j<='v';j++)
				for(int k=j+1;k<='w';k++)
					for(int l=k+1;l<='x';l++)
						for(int m=l+1;m<='y';m++)
							for(int o=m+1;o<='z';o++)
							{
								num++;
								if(i==s[0] and j==s[1] and k==s[2] and l==s[3] and m==s[4] and o==s[5])
								{
									cout<<num;
									return 0;
								}					
							}
	}
	return 0;
}

使用暴力枚举做的

观看体验可能不是很好

请各位大佬帮忙看看

2024/2/25 12:44
加载中...