示例是没问题的,但四个点都WA了()
#include <stdio.h>
int main(){
int a,n,m,x;
scanf("%d %d %d %d",&a,&n,&m,&x);
int each;
int shang[n][2];//前面为a后面为n
int xia[n][2];
if(x==1){printf("%d",a);return 0;}
if (x==2) {printf("%d",a);return 0;}
if (x==n) {printf("%d",m);return 0;}
shang[0][0]=1;shang[1][1]=1;
xia[1][1]=1;
for(int i=2;i<=n-2;i++){
shang[i][0]=shang[i-1][0]+shang[i-2][0];
shang[i][1]=shang[i-1][1]+shang[i-2][1];
xia[i][0]=shang[i-1][0];
xia[i][1]=shang[i-1][1];
}
int cheshang[2]={0};
for (int i =0;i<=n-2;i++){
cheshang[0]+=shang[i][0]-xia[i][0];
cheshang[1]+=shang[i][1]-xia[i][1];
}
each=(m-cheshang[0]*a)/cheshang[1];
//chsahng[0]*a+cheshang[1]*each=m
int cheshangx[2]={0};
for (int i =0;i<=x-1;i++){
cheshangx[0]+=shang[i][0]-xia[i][0];
cheshangx[1]+=shang[i][1]-xia[i][1];
}
printf("%d",cheshangx[0]*a+cheshangx[1]*each);
}