论getline和cin区别
查看原帖
论getline和cin区别
338370
Merron楼主2020/7/15 17:04

RT

#include <iostream>
#include <string>
using namespace std ;
void Tree (string, string) ;
string a, b ;

int main ()
{
    getline >> a ;
    getline >> b ;
    Tree (a, b) ;
    cout << endl ;
    return 0 ;
}

void Tree (string A,string B)
{
    if (A . size () > 0)
    {
        char C = B [B . size () - 1] ;
        cout << C ;
        int k = A . find (C) ;
        Tree (A . substr (0, k), B . substr (0, k)) ;
        Tree (A . substr (k + 1), B . substr (k, A . size () - k - 1)) ;
    }
}

这份代码逻辑上没有错误,但还是全WA,为什么?

后来,我将getline改为cin 代码如下:

#include <iostream>
#include <string>
using namespace std ;
void Tree (string, string) ;
string a, b ;

int main ()
{
    cin >> a ;
    cin >> b ;
    Tree (a, b) ;
    cout << endl ;
    return 0 ;
}

void Tree (string A,string B)
{
    if (A . size () > 0)
    {
        char C = B [B . size () - 1] ;
        cout << C ;
        int k = A . find (C) ;
        Tree (A . substr (0, k), B . substr (0, k)) ;
        Tree (A . substr (k + 1), B . substr (k, A . size () - k - 1)) ;
    }
}

这就AC。

???难道getline有bug?

求指点,以帮助和我一样因此奋斗的小伙伴

2020/7/15 17:04
加载中...