题目描述
小C在农场的附近看到有n颗电线杆排成一行,相邻之间距离为20。它们高度可能不一样,但高度相同的电线杆顶端有电线连接。如下面示意图中,电线杆用粗细为6的垂直直线画,电线用粗细为2的水平直线画。给定每个电线杆的高度,请用goc编程画出示意图。比如:n=4, 高度为:100 50 50 100,示意图如下:
输入格式
第一行1个正整数n,2<=n<=15。
第二行n个正整数,依次表示从左到右的电线杆的高度。
输出格式
正确的图形。
输入/输出例子1
输入:
7
200 60 80 40 200 80 200
输出:
解题思路
从当前的电线杆向后找,如果找到有和当前电线杆一样高的,把它们连线,并继续循环。
参考答案
int main() { int n,a[16]; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i]; } pen.speed(10); for(int i=1;i<=n;i++) { pen.fd(a[i]); for(int j=i+1;j<=n;j++)//向后找 { if(a[j]==a[i])//一样高 { pen.size(2); pen.rt(90).fd((j-i)*20).bk((j-i)*20).lt(90);//连线 pen.size(6); } } pen.bk(a[i]).up().rt(90).fd(20).down().lt(90);//准备画下一条电线杆 } return 0; }