计蒜客 T1609 掷骰子

题目链接:掷骰子

解题思路:将所有相加的结果枚举,出现的次数保存到一个数组中,然后输出相加结果出现次数最多的即可。

#include<iostream>
using namespace std;


int sum[101] = {0};    //相加的结果最大不会超过 20+20+40 101足够大 
int main(){
	int s1,s2,s3;
	int max = 0;
	int k = 0;    //用k存储出现最多的点数之和
	
	cin>>s1>>s2>>s3;
	for(int i=1;i<=s1;i++){
		for(int j=1;j<=s2;j++){
			for(int n=1;n<=s3;n++){
				sum[(i+j+n)]++;    //将所有相加的结果枚举,出现的次数保存到数组中 
			}
		}
	}
	 
	//寻找出现次数最多的点数之和 
	for(int i=0;i<81;i++){
		//cout<<sum[i]<<" "; 
		if(sum[i]>max){
			max = sum[i];
			k = i; 
		}
	} 
	cout<<k;
	return 0;
	
} 

    

发布了61 篇原创文章 · 获赞 35 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_41575507/article/details/104488152
今日推荐