alpha 公司設計出一種節能的機器裝置。它的內部結構是由 n 個齒輪組成。整個機器裝置有
乙個驅動齒輪,當啟動它時,它立即按 10,000 圈/小時轉速順時針轉動,然後它又帶動與它相切
的齒輪反方向,即逆時針轉動。齒輪之間互相作用,每個齒輪都可能驅動著多個齒輪,最終帶動
乙個工作齒輪完成相應的任務 。
在這套裝置中,記錄了每個齒輪的圓心座標和齒輪半徑。已知驅動齒輪位於(0,0),最終的
工作齒輪位於(xt, yt)。
alpha 公司想知道傳動序列中所有齒輪的轉速。所謂傳動序列,即能量由驅動齒輪傳送,最
後到達工作齒輪的過程中用到的所有齒輪。能量傳送過程是,在乙個半徑為 r,轉速為 s 圈/每小
時的齒輪的帶動下,與它相切的半徑為 r』的齒輪的轉速為-s*r/r` 轉/小時。負號的意思是, 表
示按反方向轉動。
已知,機器裝置中除了驅動齒輪以外,所有齒輪都可能被另外某個齒輪帶動,並且不會出現
2 個不同的齒輪帶動同乙個齒輪的情況。
你的任務是計算整個傳動序列中所有齒輪的能量之和。即所有齒輪轉速的絕對值之和。
第一行: t 表示以下有 t 組測試資料(1≤t ≤8)
對每組測試資料:
第 1 行: n xt yt (2≤n ≤1100)
接下來有 n 行, xi yi ri 表示 n 個齒輪的座標和半徑 i=1,2,….,n
( -5000 ≤xi ,yi ≤ 5000 3 ≤ ri ≤ 1000 )
第一行: t 表示以下有 t 組測試資料(1≤t ≤8)
對每組測試資料:
第 1 行: n xt yt (2≤n ≤1100)
接下來有 n 行, xi yi ri 表示 n 個齒輪的座標和半徑 i=1,2,….,n
( -5000 ≤xi ,yi ≤ 5000 3 ≤ ri ≤ 1000 )
1 4 32 54
0 30 20
0 0 10
32 54 20 -
40 30 20
20000
思路:bfs,讓每次能卡住的齒輪進隊,由於結束條件是x=xt,y=yt,附帶輸出齒輪轉速和sum,所以結構體中至少要有這三個變數,還要加上本身的轉速v
題中沒說整數還是浮點數,,注意結果要向下取整。。這裡wa了好多次orz。。
#include#include#include#includeusing namespace std;
const int n = 1015;
bool vis[n];
struct node
q[n];
int main()
vis[i]=0;
}if(xt==0&&yt==0)
while(!q.empty())}}
if(f==1)
break;}}
return 0;
}
機器裝置(dfs)
時間限制 難度 2 描述 alpha 公司設計出一種節能的機器裝置。它的內部結構是由 n 個齒輪組成。整個機器裝置有 乙個驅動齒輪,當啟動它時,它立即按 10,000 圈 小時轉速順時針轉動,然後它又帶動與它相切 的齒輪反方向,即逆時針轉動。齒輪之間互相作用,每個齒輪都可能驅動著多個齒輪,最終帶動 ...
機器裝置(深搜)
機器裝置 時間限制 1000 ms 記憶體限制 65535 kb 難度 2 描述alpha 公司設計出一種節能的機器裝置。它的內部結構是由 n 個齒輪組成。整個機器裝置有 乙個驅動齒輪,當啟動它時,它立即按 10,000 圈 小時轉速順時針轉動,然後它又帶動與它相切 的齒輪反方向,即逆時針轉動。齒輪...
nyoj 1276機器裝置
時間限制 1000 ms 記憶體限制 65535 kb 難度 2描述 alpha 公司設計出一種節能的機器裝置。它的內部結構是由 n 個齒輪組成。整個機器裝置有 乙個驅動齒輪,當啟動它時,它立即按 10,000 圈 小時轉速順時針轉動,然後它又帶動與它相切 的齒輪反方向,即逆時針轉動。齒輪之間互相作...