確定烷烴基種類(列舉)

2021-10-03 12:10:22 字數 1530 閱讀 7557

烷烴基有6個原子和5個化學鍵,6個原子分別標號1~6,然後用一對數字 a,b 表示原子a和原子b間有乙個化學鍵。這樣通過5行a,b可以描述乙個烷烴基

你的任務是甄別烷烴基的類別。

原子沒有編號方法,比如

1 22 3

3 44 5

5 6和

1 32 3

2 44 5

5 6是同一種

input:輸入第一行為資料的組數t(1≤t≤200000)。每組資料有5行,每行是兩個整數a, b(1≤a,b≤6,a ≤b) 資料保證,輸入的烷烴基是以上5種之一

output:每組資料,輸出一行,代表烷烴基的英文名

分析上述五種烷烴基的不同之處:

n-hexane: 有兩個原子連線了1個原子,有四個原子連線了2個原子

3-methylpentane:有三個原子連線了1個原子,有兩個原子連線了2個原子,有乙個原子連線了3個原子(其中與該原子相連的3個原子中有兩個原子都是連線了***2***個原子)

2,2-dimethylbutane:有四個原子連線了1個原子,有乙個原子連線了2個原子,有乙個原子連線了4個原子

2-methylpentane:有三個原子連線了1個原子,有兩個原子連線了2個原子,有乙個原子連線了3個原子(其中與該原子相連的3個原子中有兩個原子都是連線了***1***個原子)

3-methylpentane:有四個原子連線了1個原子,有兩個原子連線了3個原子

暴力方法,觀察烷烴基不同種類結構特點

#include

using

namespace std;

intmain()

;int s[5]

=;for(

int i=

0;i<

5;i++

)for

(int i=

1;i<=

6;i++)if

(s[1]==

2&&s[2]

==4&&s[3]

==0) cout<<

"n-hexane"

<

if(s[1]

==4&&s[2]

==1&&s[4]

==1) cout<<

"2,2-dimethylbutane"

<

if(s[1]

==4&&s[3]

==2) cout<<

"2,3-dimethylbutane"

<

if(s[1]

==3&&s[2]

==2&&s[3]

==1)}

}if(t==

2) cout<<

"2-methylpentane"

<

else cout<<

"3-methylpentane"

<

} t--;}

return0;

}

化學 烷烴基

有5種烷烴基,6個原子,5個化學鍵,用編號對表示化學鍵的位置 原子未預先編號 根據所給的化學鍵編號,輸出烷烴基型別。觀察烷烴基,按照各個原子連線的化學鍵數目區別,特徵如下 include include include using namespace std int t,a,b intmain vo...

甄別烷烴基的類別

化學很神奇,以下是烷烴基。假設如上圖,這個烷烴基有6個原子和5個化學鍵,6個原子分別標號1 6,然後用一對數字 a,b 表示原子a和原子b間有乙個化學鍵。這樣通過5行a,b可以描述乙個烷烴基。你的任務是甄別烷烴基的類別。input 輸入第一行為資料的組數t 1 t 200000 每組資料有5行,每行...

確定基類有虛析構函式

有時,乙個類想跟蹤它有多少個物件存在。乙個簡單的方法是建立乙個靜態類成員來統計物件的個數。這個成員被初始化 為0,在建構函式裡加1,析構函式裡減1。條款m26裡說明了如何把這種方法封裝起來以便很容易地新增到任何類中,my article on counting objects 提供了對這個技術的另外...