poj 1493 Machined Surfaces
這道題的難點在於讀題,題讀懂了,基本就是很水很水的題目。。。
題意:每張照片由n行串組成,每行串長度為25,都由X開頭,空格中間(也可沒有),X結尾。所有串的左邊X部分同時右移,直到有一個串沒有空格。問這時所有串合起來總共有幾個空格。
思路:求最短的空格數min,每一行的空格數減去min之和就是結果了。
AC的代碼:
#include <iostream> int blankNum[15]; char img[30]; int main() { int n; while(scanf("%d",&n)) { if(n==0) return 0; getchar(); int i,j; int min=999; int tmp; for(i=1;i<=n;i++) { tmp=0; gets(img); for(j=0;j<25;j++) if(img[j]==' ') tmp++; blankNum[i]=tmp; if(tmp<min) min=tmp; } for(i=1,tmp=0;i<=n;i++) tmp+=blankNum[i]-min; printf("%d\n",tmp); } return 0; }
最後更新:2017-04-03 14:54:03