PTA 7 10 阿生的粉絲團 30 分

2021-09-27 11:20:16 字數 1949 閱讀 1579

夭折了,阿生竟然有粉絲團了,而且還是清一色的妹子。激動的阿生忍不住咬了自己一下,確定一下不是夢,好吧,還真是個夢。醒來的阿生悲痛欲絕,只想知道夢境中她們平面座標的逆時針排列,你能幫幫他嗎。

輸入格式:

輸入每行給出一組整數x,y代表夢境中阿生粉絲的平面座標,並且保證第乙個的座標永遠是(0 0): -1000= x <= 1000, -1000<= y <= 1000

輸出格式:

按照(%d,%d)的格式輸出即可

輸入樣例:

0 0

70 -50

60 30

-30 -50

80 20

50 -60

90 -20

-30 -40

-10 -60

90 10

輸出樣例:
(0,0)

(-30,-40)

(-30,-50)

(-10,-60)

(50,-60)

(70,-50)

(90,-20)

(90,10)

(80,20)

(60,30)

思路

注意,測試的時候,需要通過ctrl+z 然後回車,才能結束輸入。

我的思路很簡單,設定結構體儲存xy座標,然後就是對輸入進行遍歷,設立四個vector陣列,用來儲存每個象限的節點,最後對四個陣列分別進行sort,注意不同象限的sort自定義cmp方法不一樣,要根據象限保持逆時針的特點來寫cmp方法。

最後根據從三四二一象限這樣的順序進行輸出就好。

c++ ac**

#include

#include

using namespace std;

struct node

;//3

bool c***

(node n1,node n2)

else

}//4

bool cmp4

(node n1,node n2)

else

}//2

bool cmp2

(node n1,node n2)

else

}//1

bool cmp1

(node n1,node n2)

else

}int

main()

else

if(nd.x>

0&&nd.y<0)

else

if(nd.x>

0&&nd.y>0)

else

if(nd.x<

0&&nd.y>0)

}sort

(v3.

begin()

,v3.

end(

),c***)

;sort

(v1.

begin()

,v1.

end(

),cmp1)

;sort

(v2.

begin()

,v2.

end(

),cmp2)

;sort

(v4.

begin()

,v4.

end(

),cmp4)

; cout<<

"(0,0)"

int i=

0; isize()

; i++

)for

(int i=

0; isize()

; i++

)for

(int i=

0; isize()

; i++

)for

(int i=

0; isize()

; i++

)return0;

}

PTA 7 10 古風排版

7 10 古風排版 中國的古人寫文字,是從右向左豎向排版的。本題就請你編寫程式,把一段文字按古風排版。輸入在第一行給出乙個正整數n 100 是每一列的字元數。第二行給出乙個長度不超過1000的非空字串,以回車結束。按古風格式排版給定的字串,每列n個字元 除了最後一列可能不足n個 4 this is ...

PTA 7 10 兔子繁衍問題

一對兔子,從出生後第3個月起每個月都生一對兔子。小兔子長到第3個月後每個月又生一對兔子。假如兔子都不死,請問第1個月出生的一對兔子,至少需要繁衍到第幾個月時兔子總數才可以達到n對?輸入在一行中給出乙個不超過10000的正整數n。在一行中輸出兔子總數達到n最少需要的月數。309這道題實質上是斐波那契數...

PTA 7 10 列車排程

火車站的列車排程鐵軌的結構如下圖所示。兩端分別是一條入口 entrance 軌道和一條出口 exit 軌道,它們之間有n條平行的軌道。每趟列車從入口可以選擇任意一條軌道進入,最後從出口離開。在圖中有9趟列車,在入口處按照的順序排隊等待進入。如果要求它們必須按序號遞減的順序從出口離開,則至少需要多少條...