hdu 3786 尋找直系親屬

2021-06-18 07:01:55 字數 700 閱讀 3235

題目思路: 我們用p[i]=j 來表示 i 的孩子是j (因為乙個parent只有乙個孩子,但是乙個孩子有兩個parent不好形成對應)

然後初始化為-1,這樣如果遇到父母不清楚的(『-』) 還是-1,一遇到就break掉,把count還原為0;  如果是家族樹上存在的兩個結點,那麼一定可以通過這樣知道他們相隔的代數,於是就可以知道相應的稱謂  一堆if-else  比較考基本功

**:#include#include#includeusing namespace std;

int p[26];

/*int chartoint(char ch)

*/int main()

char c1,c2;

for(int i=0;i>s;

c1=s[0];

c2=s[1];

int count1=0,count2=0;

int target1=c1-'a';

int target2=c2-'a';

int cur=target1;

while(cur!=target2)

else count1++;

}if(count1==0)

else count2++;}}

if(count1==0&&count2==0)

cout<<"grandparent"<=3)

cout<<"grandchild"<

hdu 3786 尋找直系親屬

題目思路 我們用p i j 來表示 i 的孩子是j 因為乙個parent只有乙個孩子,但是乙個孩子有兩個parent不好形成對應 然後初始化為 1,這樣如果遇到父母不清楚的 還是 1,一遇到就break掉,把count還原為0 如果是家族樹上存在的兩個結點,那麼一定可以通過這樣知道他們相隔的代數,於...

找出直系親屬

時間限制 1秒 空間限制 65536k 熱度指數 368 如果a,b是c的父母親,則a,b是c的parent,c是a,b的child,如果a,b是c的 外 祖父,祖母,則a,b是c的grandparent,c是a,b的grandchild,如果a,b是c的 外 曾祖父,曾祖母,則a,b是c的grea...

1050 找出直系親屬

時間限制 1 sec 記憶體限制 128 mb 提交 72 解決 61 提交 狀態 討論版 如果a,b是c的父母親,則a,b是c的parent,c是a,b的child,如果a,b是c的 外 祖父,祖母,則a,b是c的grandparent,c是a,b的grandchild,如果a,b是c的 外 曾祖...