iT邦幫忙

0

判斷集合的輸入問題

題目:
在數學的定義中,一個集合裡有0或多個元素。在本問題中要請你撰寫一支可以判斷2個集合的關係的程式。輸入包含好幾組測試資料,每組資料有2列。第一列代表第一個集合A,第二列代表第二個集合B。每個集合中至少有一個元素(整數),元素間以空格分開。對每筆輸入資料你應該要輸出以下其中一種情況:

  • A is a proper subset of B (A是B的子集合);
  • B is a proper subset of A (B是A的子集合);
  • A equals B (A、B是相同集合);
  • A and B are disjoint (A、B完全沒有交集);
  • I'm confused! (A、B有部分交集)。

範例輸入:
9 24 1995
9 24
範例輸出:
B is a proper subset of A

比較困惑的是如何判斷A或B已經輸入結束@@?

1 個回答

1
小魚
iT邦大師 1 級 ‧ 2019-11-18 23:11:47
最佳解答

輸入結束很簡單,
按Enter就是結束了.

請先貼一下您目前撰寫的原始碼,
以及在哪裡遇到問題,
謝謝~

   while(cin>>arrayA[a] && getchar()!='\n'){
       a += 1;
   }

   while(cin>>arrayB[b] && getchar()!='\n'){
       b += 1;
   }

剛剛想到解法了 像這樣好像OK XD
想說透過Enter等於\n的方式

小魚 iT邦大師 1 級 ‧ 2019-11-19 08:29:21 檢舉

其實你可以考慮用C++的string直接cin一整行,
然後再做處理.
類似這樣子吧
C++讀取一整行字串

好 我試試看!

我要發表回答

立即登入回答