#include<bits/stdc++.h> using namespace std; int main() { double n,c=0; string s1,s2; cin>>n>>s1>>s2; for(int i=0;i<s1.size();i++)if(s1[i]==s2[i])c++; if(c/s1.size()>=n)cout<<"yes"; else cout<<"no"; }
可以问一下c为什么要用double定义吗,个数不是整形的嘛,我用int定义就总有一个wrong answer,谢谢大佬
这个是精度问题,int貌似自动四舍五入了,这样和小数比较就不准了 所以以后如果和小数除的时候经量用double,如果用int要在后面加 *1.0
*1.0
谢谢谢谢!
int/int=>int,所以只要不是完全匹配都会为0
为什么我的两个字符串用getline读入只能读到一个 用cin读入就一点事没有
cin之后用getline,getline会读到一个cin留下的换行符啥也没读到就结束了。
为什么使用fgets会报错呢兄弟们
C/s1.size()>=n是什么意思
刚刚学,有点菜
题目所描述的: 如果两个字符串的匹配位置的数量与字符串总长度的比值大于或等于 $k$ ,则称两个字符串是匹配的。
谢谢啦
可以问一下c为什么要用double定义吗,个数不是整形的嘛,我用int定义就总有一个wrong answer,谢谢大佬
这个是精度问题,int貌似自动四舍五入了,这样和小数比较就不准了
所以以后如果和小数除的时候经量用double,如果用int要在后面加
*1.0
谢谢谢谢!
int/int=>int,所以只要不是完全匹配都会为0
为什么我的两个字符串用getline读入只能读到一个
用cin读入就一点事没有
cin之后用getline,getline会读到一个cin留下的换行符啥也没读到就结束了。
为什么使用fgets会报错呢兄弟们
C/s1.size()>=n是什么意思
刚刚学,有点菜
题目所描述的:
如果两个字符串的匹配位置的数量与字符串总长度的比值大于或等于 $k$
,则称两个字符串是匹配的。
谢谢啦