- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
朝阳科技大学-教学助理「程式设计」社群,试题解析研讨表.doc
附件4朝陽科技大學-教學助理「程式設計」社群
附件4
學院
資訊學院
系別
資訊工程系
日期
102年12月12日 星期四
科目名稱
程式設計
試題類型
問答題
01
【試題】座位調整
百度辦公區裡到處擺放著各種各樣的零食。百度人力資源部的調研發現,員工如果可以在自己喜歡的美食旁邊工作,工作效率會大大提高。因此,百度決定進行一次員工座位的大調整。
調整的方法如下:
1 .首先將辦公區按照各種零食的擺放分成N 個不同的區域。 (例如:可樂區,餅乾區,牛奶區等等)。
2 .每個員工對不同的零食區域有不同的喜好程度(喜好程度度的範圍為1 — 100 的整數, 喜好程度越大表示該員工越希望被調整到相應的零食區域)。
3 .由於每個零食區域可以容納的員工數量有限,人力資源部希望找到一個最優的調整方案令到總的喜好程度最大。
輸入:
第一行包含兩個整數N , M ,( 1<=N , M<=300 )。分別表示 N 個區域和 M 個員工。
第二行是N 個整數構成的數列a ,其中a[i] 表示第i 個區域可以容納的員工數, (1??<=a[i]<=M , a[1]+a[2]+ ..+a[N]=M) 。
緊接著是一個M*N 的矩陣P , P ( i , j )表示第i 個員工對第j 個區域的喜好度。
輸出:
對於每個測試數據,輸出可以達到的最大的喜好程度。
【解析/研討】
#include<stdio.h>
#include<stdlib.h>
int main()
{
int b[302][302];
int i,r,j,k=0,sum=0,n,m,l,s;
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
scanf("%d",&b[0][i]);
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
scanf("%d",&b[i][j]);
for(l=1;l<=m;l++)
{
for(j=1;j<=n;j++)
{
if(k<b[l][j])
{
k=b[l][j];
r=j;
}
}
sum+=k;
b[0][r]--;
k=0;
if(b[0][r]==0)
{
for(s=1;s<=m;s++)
b[s][r]=0;
}
}
printf("%d",sum);
system("pause");
return 0;
}
02
【試題】大足球比賽
吉林一中將舉辦一年一度的足球比賽。 Andy的班級即將面臨一組強隊,就是去年的冠軍隊。 Andy在比賽之前做了充分的準備,蒐集了許多關於這支隊伍的信息。
在這支隊伍中有N-1個隊員,通過過去比賽記錄來看,他們總是在某些固定的隊員之間傳球。我們把對方的守門員編號為1號,我們的球門編號為N號,其他的為對方球員。資料裡給出若干個整數對(ai,bi),表示球會從ai傳到bi,如果ai==1,代表球從對方守門員開出,如果bi==N,代表球攻入我方大門。其他情況均為對方隊友間的傳球配合。每組傳球,還會給出一個實數pi,表示對方傳球成功的概率,我方成功防守的概率就是1-pi。
我們會選擇一些對方的傳球路線做重點防禦,使得不會出現某條從對方守門員到我方大門路徑完全沒有防守。假設我們選取的防禦集合為S,我們定義了估價函數F(S)表示該種防守的可靠值。
現在你需要計算這個可靠值最大值。
輸入:
輸入包含多組測試數據。數據的第一行包含兩個整數N,M (1<= N <= 100, 1<= M <= 400), 接下來M行,每行包含三個數字ai bi Pi (1 <= ai, bi <= N , 0 <= Pi <= 1 ).
輸入文件結束於 N = M = 0.
輸出:
對於每組數據,如果最大值為0,輸出“The opponent is too strong!” 如果最大值為1,輸出“The opponent is too week!”,否則輸出這個最大值,保留6位小數。
【解析/研討】
#include <algorithm>
#include <iostream>
#include <stdio.h>
#include <assert.h>
#include <memory>
#include <utility>
#include <vector>
#include <functional>
#include <math.h>
#include <numeric>
using namespace std;
#define MAX_PLAYER 101
#define MAX_PASS 401
#define START_PLAYER 1
#define MARK_VALUE (-1)
int end;//to be n+1;
int m,n;
struct _No
文档评论(0)