A小红小紫替换
https://ac.nowcoder.com/acm/contest/74362/A
这题相当于签到题只需要将kou的情况转换成yukari就行其他不变
点击查看代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
string a ;
cin >> a;
if(a == "kou")cout << "yukari" <<endl;
else cout << a <<endl;
return 0;
}
B小红的因子数
https://ac.nowcoder.com/acm/contest/74362/B
B题这道题是求一个数的因子是不是为素数,所以一开始我便是想到先写一个素数判断
开个根号也是为了防止超时,但是我寻找因子的方法太笨重所以老是超时
点击查看代码
long long cmt(int x)
{
int m = 0;
for(long long i = 2; i <= x / i; i++)
{
if(x % i == 0)
{
m = 1;
break;
}
}
if(m == 0)n++;
return n;
}
点击查看代码
int main()
{
long long a;
cin >> a;
if(a == 1){
cout << 0 <<endl;
return 0;
}
for(long long i = 1; i < a / i; i++)
{
for(long long j = 1; j <= a; j++)
{
if(i * j == a)
{
if(i != j)
{
cmt(i);
cmt(j);
}
else if(i == j)cmt(i);
}
else continue;
}
}
cout <<n -1<<endl;
return 0;
}
点击查看代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
long long x , cnt =0;
cin >> x;
for(long long i = 2; i < x / i; i++)
{
if(x % i == 0)
{
cnt ++;
while(x % i ==0)x /= i;
}
}
if(x > 1)cnt ++;
cout << cnt <<endl;
return 0;
}
c 小红的字符串中值
https://ac.nowcoder.com/acm/contest/74362/C
这题我的想法就是我给他我从前往后找当a[0]时我找到他是三个一起五个一起的样子然后再以a[1]为头开始找
但是这样子会超时后面的样例跑不过
错误样例
点击查看代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a, n = 0;
cin >> a;
char b;
cin >> b;
string c;
cin >> c;
for(int i = 0; i < a; i++)
{
if(c[i] == b)n++;
}
for(int i = 0; i < a; i++)
{
int m = 2 + i;
while(m < a)
{
if(c[(i + m)/2] == b )n++;
if(m + 2 >= a)break;
m += 2;
}
}
cout << n << endl;
return 0;
}
点击查看代码
#include<bits/stdc++.h>
using ll = long long;
int main()
{
int n;
ll cnt = 0;
char x;
string s;
cin >> n >> x >> s;
for (int i = 0; i < n; i++)
{
if (x == s[i])
{
cnt += min(n - i - 1, i) + 1;//min(n - i, i + 1);
}
}
cout << cnt << '\n';
return 0;
}