{"trustable":false,"sections":[{"title":"","value":{"format":"MD","content":"有一台起重机。我们把起重机看成由$N$条线段依次首尾相接而成。第i条线段的长度是$L_i$。最开始,所有的线段都笔直连接,指向上方。\n有$C$条操纵起重机的指令。指令i给出两个整数$S_i$和$A_i$,效果是使线段$S_i$和$S_i+1$之间的角度变成A,度。其中角度指的是从线段$S_i$开始沿逆时针方向旋转到S.;所经过的角度。最开始时所有角度都是$180$度。\n按顺序执行这$C$条指令。在每条指令执行之后,输出起重机的前端(第N条线段的端点)的坐标。假设起重机的支点的坐标是$(0,0)$。\n"}},{"title":"Input","value":{"format":"MD","content":"输入由几个实例组成,由单个空行分隔。\n\n每组数据的第一行由两个整数$N(1\\leq n \\leq 10 000)$和$C$组成,用一个空格隔开,表示起重机的段数和命令的数量。\n第二行由n个整数$l_1,\\dots,l_n(1\\leq l_i\\leq 100)$组成,用单个空格隔开。起重机第$i$段的长度为$l_i$。\n下面的$C$行指定操作者的命令。每一行描述的命令由两个整数$Si$和$Ai(1\\leq S_i \\leq N,0\\leq A_i \\leq 359)$组成,由一个空格隔开,命令是使线段$S_i$和$S_i+1$之间的角度变成A,度(角度从第$S$段到第$S_i+1$段逆时针测量)。"}},{"title":"Output","value":{"format":"MD","content":"每组数据的输出由$C$行组成。其中第$i$行由两个有理数$x$和$y$组成,用一个空格隔开,为第$i$条命令后第$N$条线段段的终点坐标,小数点后四舍五入到两位。 \n每组数据的输出之间必须用一个空行隔开。"}},{"title":"Sample","value":{"format":"MD","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e2 1\n10 5\n1 90\n\n3 2\n5 5 5\n1 270\n2 90\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e5.00 10.00\n\n-10.00 5.00\n-5.00 10.00\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n"}}]}