当前位置:   article > 正文

WebGoC题解(18) 630.电线杆(2019NHOI小乙)

WebGoC题解(18) 630.电线杆(2019NHOI小乙)

题目描述

小C在农场的附近看到有n颗电线杆排成一行,相邻之间距离为20。它们高度可能不一样,但高度相同的电线杆顶端有电线连接。如下面示意图中,电线杆用粗细为6的垂直直线画,电线用粗细为2的水平直线画。给定每个电线杆的高度,请用goc编程画出示意图。比如:n=4, 高度为:100 50 50 100,示意图如下:

           

blob.png

                                   

输入格式

第一行1个正整数n,2<=n<=15。

第二行n个正整数,依次表示从左到右的电线杆的高度。

输出格式

 正确的图形。

输入/输出例子1

输入:

7

200 60 80 40 200 80 200

输出:

blob.png

解题思路 

从当前的电线杆向后找,如果找到有和当前电线杆一样高的,把它们连线,并继续循环。 

参考答案 

  1. int main()
  2. {
  3. int n,a[16];
  4. cin>>n;
  5. for(int i=1;i<=n;i++)
  6. {
  7. cin>>a[i];
  8. }
  9. pen.speed(10);
  10. for(int i=1;i<=n;i++)
  11. {
  12. pen.fd(a[i]);
  13. for(int j=i+1;j<=n;j++)//向后找
  14. {
  15. if(a[j]==a[i])//一样高
  16. {
  17. pen.size(2);
  18. pen.rt(90).fd((j-i)*20).bk((j-i)*20).lt(90);//连线
  19. pen.size(6);
  20. }
  21. }
  22. pen.bk(a[i]).up().rt(90).fd(20).down().lt(90);//准备画下一条电线杆
  23. }
  24. return 0;
  25. }
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/1008864
推荐阅读
相关标签
  

闽ICP备14008679号