字典查找。显示constexpr有误。

Berland语言由正好有两个字母的单词组成。此外,单词的第一个字母与第二个字母不同。
两个不同的Berland字母的任何组合(顺便说一句,与拉丁字母的小写字母相同)都是Berland语言中的正确单词。
伯兰词典收录了这种语言的所有单词。这些单词是按照字典中通常的顺序排列的。
从形式上讲,如果下列条件之一成立,单词a在词典中出现的时间早于单词b,a的首字母小于b的首字母。a
a和b b的第一个字母相同,a
a的第二个字母小于b b的第二字母。
因此,字典看起来像这样:
单词1 1:ab
单词2 2:ac
……
单词25 25:az
单词26 26:ba
单词27 27:bc
……
单词649 649:zx
单词650 650:zy

给你一个来自Berland语言的单词s。您的任务是在字典中查找其索引。
输入:
第一行包含一个整数t(1≤ t≤ 650,1≤t≤650)-测试用例的数量。每个测试用例都包含一行包含s-一个由两个不同的小写拉丁字母组成的字符串(i。 e、 Berland语言的正确单词)。
请问该如何更改?

#include
using namespace std;
typedef long long ll;
constexpr int N = 4;
char s[N];
void solve()
{
    scanf("%s", s + 1);
    int sum = (s[1] - 'a') * 25;
    sum += (s[2] - 'a' + 1);
    if (s[2] > s[1])sum--;
    printf("%d\n", sum);
}
int main()
{
    int T = 1;
    scanf("%d", &T);
    while (T--)solve();
    return 0;
}


该回答引用GPTᴼᴾᴱᴺᴬᴵ
在代码中,constexpr被用来声明常量N,并将其设为4。但是在代码中并没有使用N,所以constexpr并不影响程序的正确性。如果出现了constexpr有误的错误提示,可能是因为使用的编译器不支持constexpr,或者constexpr的使用方式不正确。

至于该如何更改代码,根据题目描述和代码逻辑,代码已经可以正确地完成任务,因此不需要进行更改。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^