A:
解题思路:
这题看似很复杂,其实很简单,找规律不难发现就是输出n + 1
下面是c++代码:
#include<iostream>
using namespace std;
int main()
{int n;cin >> n;cout << n + 1;return 0;
}
B:
解题思路:
几种情况
第一种:没得分,两个0
第二种:得分小于10,一个0
第三种:得分超过10,取模等于0,一个0
下面是c++代码:
#include<iostream>
using namespace std;
int main()
{int sum = 0,red = 0,blue = 0;string s;cin >> s;for(int i = 0;i < s.length();i++){if(s[i] == 'a'){red++;}else{blue++;}if(red == 0){sum += 2;}if(blue == 0){sum += 2;}if(red > 0 && red < 10){sum += 1;}if(blue > 0 && blue < 10){sum += 1;}if(red % 10 == 0 && red != 0){sum += 1;}if(blue % 10 == 0 && blue != 0){sum += 1;}}cout << sum;return 0;
}
C:
解题思路:
只要一条对角线上的数相同就输出“YES”,否则“NO”
下面是c++代码:
#include<iostream>
using namespace std;
int main()
{int arr[2][2];for(int i = 0;i < 2;i++){for(int j = 0;j < 2;j++){cin >> arr[i][j];}}if(arr[0][0] == arr[1][1] || arr[0][1] == arr[1][0]){cout << "YES";}else{cout << "NO";}return 0;
}
D:
解题思路:
额,小学加减法问题,不多说了
下面是c++代码:
#include<iostream>
using namespace std;
int main()
{int a,b,c,d,e,A,B,C,D;cin >> a >> b >> c >> d >> e >> A >> B >> C >> D;if(a * A + b * B + c * C - d * D > e){cout << "YES";}else{cout << "NO";}return 0;
}
E:
解题思路:
将六个元音字母按大小顺序存放在一个数组里,遍历字符串,当某个字符不是元音字母时,倒着遍历元音数组,找到小于这个字符的元音字母,就将这个元音字母赋给当前字符,结束循环,判断下一个字符,注意一个坑,题目要求多组输入,换行输出,我在这里吃了亏。
下面是c++代码:
#include<iostream>
using namespace std;
int main()
{string s;char arr[6] = {'a','e','i','o','u','y'};while(cin >> s){for(int i = 0;i < s.length();i++){if(s[i] != 'a' && s[i] != 'a' && s[i] != 'e' && s[i] != 'i' && s[i] != 'o' && s[i] != 'u' && s[i] != 'y'){for(int j = 6;j >= 0;j--){if(arr[j] < s[i]){s[i] = arr[j];break;}}}}cout << s << endl;}return 0;
}