社区讨论

wa,在线ide使用测试数据,输出正确结果,求教什么原理

P1765手机参与者 4已保存回复 5

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
5 条
当前快照
1 份
快照标识符
@mi6xr33f
此快照首次捕获于
2025/11/20 12:33
4 个月前
此快照最后确认于
2025/11/20 12:33
4 个月前
查看原帖
CPP
#include<iostream>
#include<string>
using namespace std;
int main()
{ 
  int ci,sum=0;
  string s;
  getline(cin,s);
  //cout<<s<<endl;//test
  //cout<<"len="<<s.length()<<endl;//test
  //cout<<s[0]<<endl;//test
  //cout<<(s[0]-96)%3<<endl;//test
  for(int i=0;i<=s.length();i++)
  {
  	
  	if(s[i]!=' ')
    {//cout<<s[i]<<endl;//test 
  	//cout<<"i="<<i<<endl;//test
  	  if(s[i]<=111)
  	  {
  	    ci=(s[i]-96)%3;
  	    if(ci==0)
  	    {
  	      ci=3;
          //cout<<ci<<endl;
        }
  	    sum+=ci;
      }
      if(s[i]>111&&s[i]<=115)
      {
        ci=(s[i]-111)%4;
        if(ci==0)
          ci=4;
        sum+=ci;		
      }
      if(s[i]==' ')
        sum++;
        if(s[i]<=118&&s[i]>=116)
        {
      	  ci=(s[i]-115)%3;
        if (ci==0)
          ci=3;
        sum+=ci;
      }
      if(s[i]>118&&s[i]<=122)
      {
        ci=(s[i]-118)%4;
      	if(ci==0)
      	{
          ci=4;
          cout<<ci;
     	}
        sum+=ci;
      }
      //cout<<"s[i]="<<s[i]<<" "<<ci<<endl;//test
      }
    }
  cout<<sum<<endl;
}

回复

5 条回复,欢迎继续交流。

正在加载回复...