output
standard output
You have a string $$$s$$$ of length $$$n$$$ consisting of only characters > and <. You may do some operations with this string, for each operation you have to choose some character that still remains in the string. If you choose a character >, the character that comes right after it is deleted (if the character you chose was the last one, nothing happens). If you choose a character <, the character that comes right before it is deleted (if the character you chose was the first one, nothing happens).
For example, if we choose character > in string > > < >, the string will become to > > >. And if we choose character < in string > <, the string will become to <.
The string is good if there is a sequence of operations such that after performing it only one character will remain in the string. For example, the strings >, > > are good.
Before applying the operations, you may remove any number of characters from the given string (possibly none, possibly up to $$$n - 1$$$, but not the whole string). You need to calculate the minimum number of characters to be deleted from string $$$s$$$ so that it becomes good.
Input
The first line contains one integer $$$t$$$ ($$$1 \le t \le 100$$$) – the number of test cases. Each test case is represented by two lines.
The first line of $$$i$$$-th test case contains one integer $$$n$$$ ($$$1 \le n \le 100$$$) – the length of string $$$s$$$.
The second line of $$$i$$$-th test case contains string $$$s$$$, consisting of only characters > and <.
Output
For each test case print one line.
For $$$i$$$-th test case print the minimum number of characters to be deleted from string $$$s$$$ so that it becomes good.
Example
input
Copy
3 2 <> 3 ><< 1 >
output
Copy
1 0 0
Note
In the first test case we can delete any character in string <>.
In the second test case we don't need to delete any characters. The string > < < is good, because we can perform the following sequence of operations: > < < $$$\rightarrow$$$ < < $$$\rightarrow$$$ <.
题意:
想办法用最少的办法使括号朝向一个方向
思路:找到最左边的>和最右边的<判断哪个最小就是最短本办法
#include
#include
using namespace std;
int main()
{
int n;
scanf("%d",&n);
while(n--)
{
int g;string h;
scanf("%d",&g);
cin>>h;
if(h[0] == '>')
{
printf("0\n");continue;
}
else if(h[h.length()-1] == '<'){
printf("0\n");continue;
}
else{
int sum1 = h.length()-1;
for(int i=0;i')
{
sum1 = i;break;
}
}
int sum2 = h.length()-1;
for(int i=h.length()-1;i>=0;--i)
{
if(h[i] == '<')
{
sum2 = h.length()-1-i;break;
}
}
printf("%d\n",min(sum1,sum2));
}
}
return 0;
}