C++ 算法题:Perket 食谱 - 最小酸苦味差
{/n/'title/': /'C++ CPU占用时长: 1秒内存使用限制: 128MB//n题目描述//n///'//n//t//t//t//t//t//t//t//t//tPerket///' 是一道众所周知的美味佳肴。为了使 //n//t//t//t//t//t//t//t//t//tPerket 保持原样,厨师必须谨慎选择食材,以在保持传统风味的同时尽可能获得最大的味道。//n//n//t//t//t//t//t//t//t//t//t您有 //n//t//t//t//t//t//t//t//t//tN 种成分可供使用。 对于每种食物,我们都知道它的酸度 //n//t//t//t//t//t//t//t//t//tS 和苦味 //n//t//t//t//t//t//t//t//t//tB。当使用多种成分时,总酸度是所有成分的酸度量的乘积,总苦味是所有成分苦味量的总和。//n//n//t//t//t//t//t//t//t//t//t众所周知,//n//t//t//t//t//t//t//t//t//tPerket 既不酸也不苦。 我们要选择成分,以使酸味和苦味之间的绝对差最小。//n//n//t//t//t//t//t//t//t//t//t另外,必须使用至少一种成分。 你不能把水当做主菜。//n//n//t//t//t//t//t//t//t//t//t输入格式//n//t//t//t//t//t//t//t//t//t第一行包含整数 //n//t//t//t//t//t//t//t//t//t(//n//t//t//t//t//t//t//t//t//t1//n//t//t//t//t//t//t//t//t//t≤//n//t//t//t//t//t//t//t//t//tN//n//t//t//t//t//t//t//t//t//t≤//n//t//t//t//t//t//t//t//t//t10//n//t//t//t//t//t//t//t//t//t)//n//t//t//t//t//t//t//t//t//tN(1≤N≤10),这是我们可以使用的成分数。//n//n//t//t//t//t//t//t//t//t//t接下来的 //n//t//t//t//t//t//t//t//t//tN 行中的每行包含两个整数,每个整数之间用空格隔开,即每种成分的酸味和苦味。//n//n//t//t//t//t//t//t//t//t//t输入数据将是这样的,如果我们用所有成分做饭,酸味和苦味都将小于 //n//t//t//t//t//t//t//t//t//t1000000000//n//t//t//t//t//t//t//t//t//t1000000000。//n//n//t//t//t//t//t//t//t//t//t输出格式//n//t//t//t//t//t//t//t//t//t输出酸味和苦味之间的最小差异。//n内容:思路://n- 遍历所有可能的子集,计算每个子集的总酸度和总苦味//n- 计算每个子集的酸味和苦味之间的差异,找到最小的差异//n//n算法步骤://n1. 读取输入的N和每种成分的酸味和苦味//n2. 初始化最小差异为无穷大//n3. 遍历所有可能的子集,计算每个子集的总酸度和总苦味//n - 使用一个二进制数表示每个成分是否被选择,从0到2^N-1进行遍历//n - 对于每个二进制数,将其转换为一个包含N个元素的数组,数组的每个元素为0或1,表示该成分是否被选择//n - 计算该子集的总酸度和总苦味,并计算酸味和苦味之间的差异//n - 更新最小差异为当前差异和最小差异的较小值//n4. 输出最小差异//n', 'content': '{/'title/': /'C++ CPU占用时长: 1秒内存使用限制: 128MB//n题目描述//n///'//n//t//t//t//t//t//t//t//t//tPerket///' 是一道众所周知的美味佳肴。为了使 //n//t//t//t//t//t//t//t//t//tPerket 保持原样,厨师必须谨慎选择食材,以在保持传统风味的同时尽可能获得最大的味道。//n//n//t//t//t//t//t//t//t//t//t您有 //n//t//t//t//t//t//t//t//t//tN 种成分可供使用。 对于每种食物,我们都知道它的酸度 //n//t//t//t//t//t//t//t//t//tS 和苦味 //n//t//t//t//t//t//t//t//t//tB。当使用多种成分时,总酸度是所有成分的酸度量的乘积,总苦味是所有成分苦味量的总和。//n//n//t//t//t//t//t//t//t//t//t众所周知,//n//t//t//t//t//t//t//t//t//tPerket 既不酸也不苦。 我们要选择成分,以使酸味和苦味之间的绝对差最小。//n//n//t//t//t//t//t//t//t//t//t另外,必须使用至少一种成分。 你不能把水当做主菜。//n//n//t//t//t//t//t//t//t//t//t输入格式//n//t//t//t//t//t//t//t//t//t第一行包含整数 //n//t//t//t//t//t//t//t//t//t(//n//t//t//t//t//t//t//t//t//t1//n//t//t//t//t//t//t//t//t//t≤//n//t//t//t//t//t//t//t//t//tN//n//t//t//t//t//t//t//t//t//t≤//n//t//t//t//t//t//t//t//t//t10//n//t//t//t//t//t//t//t//t//t)//n//t//t//t//t//t//t//t//t//tN(1≤N≤10),这是我们可以使用的成分数。//n//n//t//t//t//t//t//t//t//t//t接下来的 //n//t//t//t//t//t//t//t//t//tN 行中的每行包含两个整数,每个整数之间用空格隔开,即每种成分的酸味和苦味。//n//n//t//t//t//t//t//t//t//t//t输入数据将是这样的,如果我们用所有成分做饭,酸味和苦味都将小于 //n//t//t//t//t//t//t//t//t//t1000000000//n//t//t//t//t//t//t//t//t//t1000000000。//n//n//t//t//t//t//t//t//t//t//t输出格式//n//t//t//t//t//t//t//t//t//t输出酸味和苦味之间的最小差异。//n内容:思路://n- 遍历所有可能的子集,计算每个子集的总酸度和总苦味//n- 计算每个子集的酸味和苦味之间的差异,找到最小的差异//n//n算法步骤://n1. 读取输入的N和每种成分的酸味和苦味//n2. 初始化最小差异为无穷大//n3. 遍历所有可能的子集,计算每个子集的总酸度和总苦味//n - 使用一个二进制数表示每个成分是否被选择,从0到2^N-1进行遍历//n - 对于每个二进制数,将其转换为一个包含N个元素的数组,数组的每个元素为0或1,表示该成分是否被选择//n - 计算该子集的总酸度和总苦味,并计算酸味和苦味之间的差异//n - 更新最小差异为当前差异和最小差异的较小值//n4. 输出最小差异//n/
原文地址: https://www.cveoy.top/t/topic/qg5y 著作权归作者所有。请勿转载和采集!