-
题意
自己查 solution
提交一个WA的代码(233)骗到CF的第一个input和output
然后发现标准输出怎么这么奇怪
仔细研究,我们提取出一个共同的单元
a*((1-abs(t-k))+(abs(abs(t-k)-1)))
其中t即为自变量
a,k为系数
手模一下发现只有t=k时该式等于2a,否则等于0(证明略)
(好东西!
那么这题就简单了对于每一个需要构造的x坐标,
加一个这样的单元(a=x/2,k=1...n)即可
code
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
using namespace std;
int n;
void solve(int *x){
for(int i=1;i<n;i++)putchar('(');
for(int i=0;i<n;i++){
if(i>=1)putchar('+');
printf("(%d*((1-abs((t-%d)))+abs((abs((t-%d))-1))))",x[i]/2,i,i);
if(i>=1)putchar(')');
}
}
int x[555],y[555],baka;
int main(){
scanf("%d",&n);
for(int i=0;i<n;i++)scanf("%d%d%d",&x[i],&y[i],&baka);
solve(x);
cout<<endl;
solve(y);
}