QOJ.ac

QOJ

時間限制: 1 s 記憶體限制: 256 MB 總分: 100

#11091. 凸轮廓

统计

一些几何图形整齐地排列在矩形网格中。这些图形占据了单行中连续的单元格,每个单元格恰好包含一个图形。每个图形要么是:

  • 一个与网格单元完全对齐的正方形,
  • 一个内切于网格单元的圆,
  • 或者一个底边与网格单元底边重合的等边三角形。

第一个样例输入中的图形及其凸轮廓。

非正式地说,一个排列的凸轮廓(convex contour)是包围所有图形的最短线条。正式地,我们可以将其定义为所有图形并集的凸包的周长。

给定一个图形的排列,求其轮廓的长度。

输入格式

第一行包含一个整数 $n$ ($1 \le n \le 20$),表示图形的数量。接下来一行包含一个由 $n$ 个字符组成的字符串,从左到右描述了排列中的图形。每个字符都是大写字母 “S”、“C” 或 “T”,分别代表正方形、圆或三角形。

输出格式

输出一个浮点数,表示轮廓的长度。如果结果与标准答案的绝对误差或相对误差小于 $10^{-6}$,则该解将被接受。

样例

输入 1

4
TSTC

输出 1

9.088434417

输入 2

3
SCT

输出 2

7.50914177324

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.