NOIP2010普及组 三国游戏 -SilverN

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<algorithm>
 4 #include<cmath>
 5 using namespace std;
 6 int d[510][510];
 7 int n;
 8 int fst,snd,ans;
 9 int main(){
10     scanf("%d",&n);
11     int i,j,x;
12     for(i=1;i<n;i++)
13       for(j=i+1;j<=n;j++)
14       {
15           scanf("%d",&d[i][j]);
16           d[j][i]=d[i][j];
17       }
18     for(i=1;i<=n;i++){
19       fst=0;snd=0;
20       for(j=1;j<=n;j++){
21           if(d[i][j]>fst){
22               snd=fst;
23               fst=d[i][j];
24           }
25         else if(d[i][j]>snd)snd=d[i][j];
26         if(snd>ans)ans=snd;
27       }
28     }
29     printf("1
%d",ans);
30     return 0;
31 }

题目内容不放了

由于电脑总是会拆掉最大的组合,所以玩家最多只能得到数值第二大的组合

那么找出第二大的组合就行了

原文地址:https://www.cnblogs.com/AwesomeOrion/p/5433330.html