题目链接:http://codeforces.com/problemset/problem/468/A
很不可思议自己这么笨,明明不要什么算法,就是要自己有耐心,找个前几项,看看规律就能得出答案的问题,下次还写不出来,就去死。
所以,你要知道,做题一开始,自己先枚举几个简单数看看有没有规律。
思路:
找规律,一开始中了搜索的毒,怎么可能搜的到嘛,10^5,早爆了。
AC代码:
#include <cstdio>
using namespace std;
int main()
{
int n;
while( ~scanf("%d",&n) )
{
if( n<4 ) printf("NO\n");
else
{
printf("YES\n");
if( n&1 )
{
while( n>5 )
{
printf("%d - %d = 1\n",n,n-1);n--;
printf("1 * %d = %d\n",n-1,n-1);n--;
}
printf("5 - 1 = 4\n");
printf("4 - 2 = 2\n");
printf("2 * 3 = 6\n");
printf("6 * 4 = 24\n");
}
else
{
while( n>4 )
{
printf("%d - %d = 1\n",n,n-1);n--;
printf("1 * %d = %d\n",n-1,n-1);n--;
}
printf("4 * 3 = 12\n");
printf("12 * 2 = 24\n");
printf("24 * 1 = 24\n");
}
}
}
return 0;
}