您现在的位置是:主页 > news > 保定高端网站建设/百度极速版

保定高端网站建设/百度极速版

admin2025/6/7 22:01:01news

简介保定高端网站建设,百度极速版,珠海网站建设专线,外贸网站建设公司服务题目描述 在一个风和日丽的午后,少佐给薇尔莉特伊芙嘉登安排了一个任务。 任务大致是这样的,接下来的一周,薇尔莉特需要照顾 N 只小猫咪。为了方便管理这N 只猫咪, 薇尔莉特准备给每只猫咪取一个独一无二的名字。取名字要征求猫…

保定高端网站建设,百度极速版,珠海网站建设专线,外贸网站建设公司服务题目描述 在一个风和日丽的午后,少佐给薇尔莉特伊芙嘉登安排了一个任务。 任务大致是这样的,接下来的一周,薇尔莉特需要照顾 N 只小猫咪。为了方便管理这N 只猫咪, 薇尔莉特准备给每只猫咪取一个独一无二的名字。取名字要征求猫…

题目描述

在一个风和日丽的午后,少佐给薇尔莉特伊芙嘉登安排了一个任务。

任务大致是这样的,接下来的一周,薇尔莉特需要照顾 N 只小猫咪。为了方便管理这N 只猫咪,

薇尔莉特准备给每只猫咪取一个独一无二的名字。取名字要征求猫咪本咪的同意才可以。

但这些猫咪都非常有个性,绝不接受很长的名字。

现给出每只猫咪所能容忍名字的长度上限。

请你为所有猫咪取名字,请问共有多少种不同的方案

名字仅包含小写英文字母。结果可能非常大,所以请将结果对 77797 取模

如果无方案,请输出 -1

输入描述:

第一行,一个正整数 N 。

第二行, N 个正整数,第 i 个数字 aia_iai​ ,表示第 i 只猫咪所能容忍名字的长度上限,数字间以空格隔开。

输出描述:

第一行,仅输出 1 个数,取模后的总方案数 x 。PS:如果无方案,请输出 -1

示例1

输入

1
1

输出

26

说明

猫咪的名字可以为 a-z 间的任意一个字母,所以方案数为 26。

示例2

输入

1
2

输出

702

说明

样例 2 中,猫咪的名字的长度可以为 1,也可以为 2。

长度为 1 时,名字可以为 a-z 中任意一个,方案数 26 种。

长度为 2 时,名字可以为 aa-z, ba-bz ,....,za-zz 中任意一个,方案数 26×26=676种。

所以总方案数为 26+676=702 种。

示例3

输入

5
7 5 8 4 3

输出

9416

备注:

100%的数据,1 ≤ N ≤ 10^4,1 ≤ a_i ≤ 10

#define _CRT_SECURE_NO_WARNINGS
#include <algorithm>
#include <iostream>
#include <iterator>
#include <string.h>
#include <cstdlib>
#include <cstdio>
#include <vector>
#include <cmath>
#include <deque>
#include <queue>
#include <map>
#include <set>
#define mod 77797
using namespace std;
int n, a[10005];
long long k = 1, ans = 1, res[15];
int main()
{for (int i = 1; i <= 10; i++){k = k % mod * 26 % mod;res[i] = (res[i - 1] % mod + k % mod) % mod;}scanf("%d", &n);for (int i = 1; i <= n; i++)scanf("%d", &a[i]);sort(a + 1, a + n + 1);for (int i = 1; i <= n; i++){k = res[a[i]] - i + 1;ans = (ans % mod * k % mod) % mod;}if (ans)printf("%lld", ans);elseprintf("-1");return 0;
}