ccf第31次第二题 坐标变换(其二)暴力求解为什么显示答案错误
作者:
LYMY
,
2023-09-26 13:14:41
,
所有人可见
,
阅读 168
#include<iostream>
#include<cmath>
#include<vector>
using namespace std;
typedef pair<int,double> PII;
int n,m;
int main(){
scanf("%d%d",&n,&m);
vector<PII> v;
for(int i=0;i<n;i++){
int op;
double x;
cin>>op>>x;
v.push_back({op,x});
}
while(m--){
int i,j;
double x,y;
cin>>i>>j>>x>>y;
for(int k=i-1;k<=j-1;k++){
if(v[k].first==1) {
x*=v[k].second,y*=v[k].second;
}
else {
double tx,ty;
tx=x*cos(v[k].second)-y*sin(v[k].second);
ty=x*sin(v[k].second)+y*cos(v[k].second);
x=tx;
y=ty;
}
}
printf("%.3llf %.3llf",x,y);
if(m) printf("\n");
}
return 0;
}
应该是练习系统有点问题,我考场上100分的交了都是0分
这个暴力肯定超,要用到前缀和和前缀积的做法才能AC
好的好的,我就是想测试一下为什么提交总是0分