[解题报告]11942 - Lumberjack Sequencing
生活随笔
收集整理的這篇文章主要介紹了
[解题报告]11942 - Lumberjack Sequencing
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目大意
題目原文:http://uva.onlinejudge.org/external/119/11942.pdf
背景:
有一個工頭與一群伐木工,工頭很喜歡找伐木工們的麻煩,他會要求伐木工們以十個一組按照他們的胡子長短依序排成一列。 你請寫一個程序判斷伐木工是否以由長到短,或以由短到長的順序排成一列。不會有人的胡子一樣長?
輸入
第一列有一 個整數N(0 < N < 20)表示測試數據的組數,接下來有N列,每列有10個相異的正整數表示每人胡子的長短。?
輸出
請 以"Ordered"表示有照順序排列,以"Unordered"表示沒有照順序排列,第一列請輸出"Lumberjacks:"。?
?Sample Input?
3 13 25 39 40 55 62 68 77 88 95 88 62 77 20 40 10 99 56 45 36 91 78 61 59 54 49 43 33 26 18?Sample Output?
Lumberjacks: Ordered Unordered Ordered算法:
我的算法是講輸入的數字進行排序,分別從小到大和從大到小,然后和原來的數據進行對比得出結果。
代碼:
這里附上我的代碼,你可以去這里提交你的代碼驗證你的代碼是否正確。
#include<stdio.h> int main(void) {int a[10],b[10],c[10];int n,i,j,l,k,m,swap,temp;scanf("%d",&n);printf("Lumberjacks:\n");while(n--){for(i=0;i<10;i++){b[i]=0;c[i]=0;}m=k=l=0;temp=0;for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++){b[i]=a[i];c[i]=a[i];}for(i=0;i<10;i++){swap=0;for(j=0;j<9;j++)if(b[j]>b[j+1]){swap=1;temp=b[j+1];b[j+1]=b[j];b[j]=temp;}if(!swap)break;}for(i=0;i<10;i++){l=9-i;c[l]=b[i];}for(i=0;i<10;i++)if(a[i]-b[i]==0)k++;for(i=0;i<10;i++)if(a[i]-c[i]==0)m++;if(k!=10&&m!=10)printf("Unordered\n");elseprintf("Ordered\n");}return 0; }?
?
?
轉載于:https://www.cnblogs.com/qisong178878915/archive/2013/02/22/2922360.html
總結
以上是生活随笔為你收集整理的[解题报告]11942 - Lumberjack Sequencing的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 四位“计算机之父”之争
- 下一篇: layui button标签