本文主要是介绍机试:砍树修路,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
问题描述
代码示例:
//一坐标轴表示某道路,从0开始 到L,整数位置上都种有一颗树。现在该路修建地铁,要砍掉铁路线路上的树木。例如:L等于10,铺设4条铁路,坐标是1到2,2到3,2到8,3到5,那么1到8的树都要被砍掉,剩下0,9,10三棵。程序要求,输入L,输入铁路铺设条数m,然后输入m组铁路的坐标。求剩下多少棵树。
#include <bits/stdc++.h>
using namespace std;void getTree(int tree[], int a, int b){for(int i = a; i <= b; i++){tree[i] = 0;}
}int main(){int L;int n;int a,b;cin >> L;cin >> n;int tree[L + 1];for(int i = 0; i <= L; i++){tree[i] = 1; }for(int i = 0; i < n; i++){cin >> a;cin >> b;getTree(tree, a, b);}int count = 0;for(int i = 0; i <= L; i++){if(tree[i] == 1){count++;} }cout << count;return 0;
}
这篇关于机试:砍树修路的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!