解题思路: 中心思想:s[l] > s[r]则满足条件,答案的个数+1。
注意事项:
1.判断函数最后要加上return 0;
2.第二个循环,即右下标不要写r>1,要写>l,即大于左下标
3.左下标是可以取到n-2的
参考代码:
#include <iostream>
#include <string>
using namespace std;
string s;
int pd(int l, int r)
{
while (l<r)
{
if (s[l] > s[r])
return 1;
else if (s[l] == s[r])
{
l++;
r--;
}
else break;
}
return 0;
}
int main()
{
int m = 0;
cin >> s;
int n = s.length();
for (int i = 0; i <= n - 2; i++)
{
for (int j = n - 1; j > i; j--)
{
if (pd(i,j))
{
m++;
}
}
}
cout << m;
return 0;
}
0.0分
1 人评分
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:602 |
C语言程序设计教程(第三版)课后习题9.2 (C语言代码)浏览:741 |
校门外的树 (C语言代码)浏览:1166 |
C语言程序设计教程(第三版)课后习题8.2 (Java代码)浏览:2287 |
C语言训练-求素数问题 (C语言代码)浏览:773 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:1555 |
【蟠桃记】 (C语言代码)浏览:697 |
用筛法求之N内的素数。 (C语言代码)浏览:711 |
A+B for Input-Output Practice (VI) (C语言代码)浏览:575 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:1324 |