问题标题: 酷町堂:3834 20分!!!

0
0
已解决
曹博扬
曹博扬
初级天翼
初级天翼
#include<iostream>
#include<string>
#include<cmath>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<sstream>
using namespace std;
string s,x[1005],t;
int n,c,p; 
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        getline(cin,s);
        getline(cin,s);
        p=0;
        for(int j=1;j<=c;j++)
            x[j].clear();
        c=0;
        s=s+" ";
        for(int j=0;j<s.size();j++){
            if(s[j]!=' ')
                t+=s[j];
            else{
                x[++c]=t;
                t="";
            }
        }
        int a=1,b=c;
        while(a<b){
            if(x[a]!=x[b]){
                cout<<"Yes"<<endl;
                p=1;
                break;
            }
            a++;
            b--;
        }
        if(p==0)
            cout<<"No"<<endl;
    }
    return 0;
}

20分!!!快快快!!!

求找错!!


0
已采纳
朱优扬
朱优扬
中级天翼
中级天翼

函数不用说了吧?(双指针判断)

主函数代码:

    cin>>n;
	getchar();
	while(n--){
		getline(cin,s);
		s=s+" ";
		cnt=0;
		t=0;
		for(int i=0;i<s.size();i++){
			if(s[i]==' '){
                cnt++;
				c[cnt]=s.substr(t,i-t);
				t=i+1;
			}
		}
		if(!hui())	cout<<"Yes\n";
		else	cout<<"No\n";
	}
    return 0;

第一自己看着办

朱优扬在2020-12-27 16:41:18追加了内容

定义

0
李显晨
李显晨
中级启示者
中级启示者

函数+定义:

string s;
string c[1005];
int st,cnt;
bool Judge(){
    int i=1,j=cnt;
    while(i<=j){
        if(c[i]!=c[j]){
            return false;
        }
        i++;
        j--;
    }
    return true;
}

主函数:

int n;
    cin>>n;
    getchar();
    while(n--){
        getline(cin,s);
        s=s+" ";
        cnt=0;
        st=0;
        for(int i=0;i<s.size();i++){
            if(s[i]==' '){
                c[++cnt]=s.substr(st,i-st);
                st=i+1;
            }
        }
        if(!Judge()) cout<<"Yes\n";
        else cout<<"No\n";
    }

 

我要回答