国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

1079. Total Sales of Supply Chain (25)

2019-11-08 19:48:42
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

1. 原題: https://www.patest.cn/contests/pat-a-PRactise/1079

2. 思路:

題意:給定一棵樹(shù),求葉子結(jié)點(diǎn)所代表的值的總和。題目中從第二行起的每一行表示該行的行號(hào)(從0開(kāi)始)的子結(jié)點(diǎn)。第一個(gè)0表示該行行號(hào)表示的結(jié)點(diǎn)是葉子結(jié)點(diǎn)。思路:dfs和bfs都可以。dfs簡(jiǎn)捷些。已AC。

3. 源碼

#include<iostream>#include<vector>using namespace std;int N;//結(jié)點(diǎn)數(shù)double price, r, sum = 0;//分別為價(jià)格, 比率, 總價(jià)vector<int> pro;//存儲(chǔ)葉子結(jié)點(diǎn)的產(chǎn)品數(shù)量vector< vector<int> > G;//圖的鄰接表表示void dfs(int sn, double price);//dfs遞歸,第一個(gè)參數(shù)是根結(jié)點(diǎn)int main(void){	//freopen("in.txt", "r", stdin);	scanf("%d %lf %lf", &N, &price, &r);	pro.resize(N, 0);	G.resize(N);	for (int i = 0; i < N; i++)//讀入數(shù)據(jù)	{		int cnt;		scanf("%d", &cnt);		if (cnt == 0)			scanf("%d", &pro[i]);//存儲(chǔ)該結(jié)點(diǎn)的產(chǎn)品數(shù)量		else		{			for (int j = 0; j < cnt; j++)			{				int id;				scanf("%d", &id);				G[i].push_back(id);			}		}	}	dfs(0, price);//遞歸	printf("%.1lf/n", sum);	return 0;}void dfs(int sn, double price){	if (G[sn].empty())//表示葉子結(jié)點(diǎn)	{		double tem = pro[sn] * price;//累計(jì)價(jià)錢		sum += tem;		return;	}	price *= (1 + r / 100.0);	for (int i = 0; i < G[sn].size(); i++)//遞歸下一層		dfs(G[sn][i], price);	return;}
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 仁寿县| 綦江县| 湘潭市| 彩票| 信丰县| 巴塘县| 横山县| 富民县| 伊川县| 行唐县| 原平市| 新营市| 滦南县| 金乡县| 平陆县| 金华市| 申扎县| 万年县| 黄浦区| 安宁市| 招远市| 都江堰市| 武功县| 义乌市| 城市| 黔东| 仁化县| 舟山市| 老河口市| 韶关市| 绿春县| 股票| 汉源县| 砀山县| 临武县| 洛宁县| 海淀区| 正阳县| 沙田区| 海伦市| 湛江市|