2021年上半年软件设计师下午真题及答案解析(试题四)

您所在的位置:网站首页 软件设计师下午题目第四道怎么做 2021年上半年软件设计师下午真题及答案解析(试题四)

2021年上半年软件设计师下午真题及答案解析(试题四)

2024-07-11 13:22| 来源: 网络整理| 查看: 265

摘要:2021年上半年软件设计师下午考试已结束,希赛小编为大家整理了2021年上半年软件设计师下午真题及答案解析(试题四)。

为方便广大考生考后估分对答案,希赛网特向广大学员和网友搜集整理了相关真题信息,供大家参考。收集完整2021年上半年软考软件设计师真题答案后,希赛网的老师也将在考后第一时间进行真题答案解析,敬请广大考友考后积极关注。

现在要推荐给大家的是文字版2021年上半年软考软件设计师考试下午真题及答案解析试题四。

试题四(共15分)

阅读下列说明和C代码,回答问题1和问题2,将解答填入答题纸的对应栏内。

[说明]

凸多边形是指多边形的任意两点的连线均落在多边形的边界或者内部。相邻的点连线落在多边形边上,称为边,不相邻的点连线落在多边形内部。称为弦。假设任意两点连线上均有权重,凸多边形最优三帮剂分问题定义为:求将凸多边形划分为不相交的三角形集合,且各三角形权重之和最小的剖分方案。每个三角形的权重为三条边权重之和。

假设N个点的凸多边形点编号为V1,V2,……,VN,若在VK处将原凸多边形划分为一个三角形V1VkVN,两个子多边形V1,V2,…,Vk和Vk,Vk+1,…VN,得到一个最优的剖分方案,则该最优剖分方案应该包含这两个子凸边形的最优剖分方案。用m[i][j]表示带你Vi-1,Vi,…Vj构成的凸多边形的最优剖分方案的权重,S[i][j]记录剖分该凸多边形的k值。

1.png

其中:

Wj,i-1分别为该三角形三条边的权重。求解凸多边形的最优剖分方案,即求解最小剖分的权重及对应的三角形集。

[C代码]

#include<stdio.h>

#define N 6                       

//凸多边形规模

int m[N+1] [N+1];         //m[i][j]表示多边形Vi-1到Vj最优三角剖分的权值

int S[N+1] [N+1];        //S[i][j]记录多边形Vi-1 到Vj最优三角剖分的k值

int W[N+1] [N+1];      //凸多边形的权重矩阵,在main函数中输入

/*三角形的权重a,b,c,三角形的顶点下标*/

int get_ triangle_weight(int a,int b,int c){

return W[a][b]+W[b][c]+W[c][a];

}

/*求解最优值*/

void triangle_partition(){

int i,r,k,j;

int temp;

/*初始化*/

for(i=1;i



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3