Result: Accepted
Time: 1ms
Memory: 1700kB
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <vector>
#include <string>
#include <cstring>
#include <string.h>
#include <map>
#include <queue>
#include <stack>
using namespace std;
typedef long long ll;
ll gcd(ll x, ll y)
{
return y==0?x:gcd(y,x%y);
}
ll lcm(ll x, ll y)
{
return x/gcd(x,y)*y;
}
ll pow_mod(ll a,ll n,ll mod)
{
ll res=1;
while(n)
{
if(n&1)res=res*a%mod;
a=a*a%mod;
n>>=1;
}
return res;
}
const ll mod=1e9+7;
char a[1000];
int main()
{
int n,m;
while(cin>>n>>m)
{
int ans=0;
int y=0;
int dis=1;
// cin>>n>>m;
int x=0;
for(int i=0;i<n;i++)
{
scanf("%s",a);
for(int j=(i%2)?m-1:0;j>=0&&j<m;j+=dis)
{
if(a[j]=='T')
{
ans+=fabs(y-j)+fabs(x-i);
y=j;
x=i;
}
}
dis=(dis==-1)?1:-1;
// if(i!=n-1)ans++;
}
cout<<ans<<endl;
}
}