烷烴基有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 提供了對這個技術的另外...