Sol :构造题。
因为闭合路径,那么转弯的数量 T >= 4 (一定),否则无解。
猜想下,只能用偶数个 S 和偶数个 T,要不不可能构成“闭合路径”。
附上详细的分析Blog、
学习地址:点击打开链接
#include <cstdio>
using namespace std;
int main()
{
int F,T;
while(~scanf("%d%d",&F,&T))
{
if(T<4)
{
printf("Atawazu\n");
continue;
}
if(F<2)
{
if(T<12)
{
printf("4\nLLLL\n");
continue;
}
else
{
printf("%d\n",12+((T-12)/4)*4);
int x=(T-12)/4;
printf("RLLRLLRL");
for(int i=0;i<x;i++) printf("RL");
printf("LRLL");
for(int i=0;i<x;i++) printf("RL");
printf("\n");
continue;
}
}
printf("%d\n",(F/2)*2+(T/2)*2);
int x=(T-4)/2;
if(x%2==0)
{
for(int i=0;i<F/2;i++) printf("F");
for(int i=0;i<x/2;i++) printf("LR");
printf("LL");
for(int i=0;i<F/2;i++) printf("F");
for(int i=0;i<x/2;i++) printf("LR");
printf("LL");
}
else
{
for(int i=0;i<F/2-1;i++) printf("F");
for(int i=0;i<=x/2;i++) printf("LR");
printf("LL");
for(int i=0;i<F/2;i++) printf("F");
for(int i=0;i<x/2;i++) printf("LR");
printf("LFL");
}
printf("\n");
}
return 0;
}