计蒜客 —— 最好的草
生活随笔
收集整理的這篇文章主要介紹了
计蒜客 —— 最好的草
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目地址:
https://nanti.jisuanke.com/t/T1141
奶牛Bessie 計劃好好享受柔軟的春季新草。新草分布在 R行 C列的牧場里。它想計算一下牧場中的草叢數量。
在牧場地圖中,每個草叢要么是單個'#',要么是有公共邊的相鄰兩個'#'。給定牧場地圖,計算有多少個草叢。
例如,考慮如下 5 行 6 列的牧場地圖
這個牧場有 5 個草叢:一個在第一行,一個在第二列橫跨了二、三行,一個在第三行,一個在第四行橫跨了四、五列,最后一個在第五行。
輸入格式
第一行包含兩個整數 R 和 C,中間用單個空格隔開。
接下來 R 行,每行 C 個字符,描述牧場地圖。字符只有'#'或'.'兩種。
輸出格式
輸出一個整數,表示草叢數。
代碼:
#include<stdio.h>
int a[100][100];
int main(){
int x,y;
scanf("%d %d",&x,&y);getchar();
for(int i = 0; i < x;i++){
for(int j = 0;j < y;j++){
char p = getchar();
if(p == '.')
a[i][j] = 0;
else
a[i][j] = 1;
}
getchar();
}
int sum = 0;
int jq = 0;
for(int i = 0; i < x;i++){
for(int j = 0;j < y;j++){
if(a[i][j] == 1){
sum++;
if(a[i][j+1] == 1 || a[i+1][j] == 1 ){
jq++;
}
}
}
}
printf("%d",sum - jq);
return 0;
}
題目難度并不大,就是思路感覺有點意思,首先將字符陣列轉化成01矩陣,方便運算,之后直接硬算遞歸的話會比較麻煩,所以直接:
# 的總數 - 每個 # 右邊和下面有相鄰的 # 的個數 = 草叢數
總結
以上是生活随笔為你收集整理的计蒜客 —— 最好的草的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: fence的使用
- 下一篇: 使用python抓取百度搜索、百度新闻搜