100 但是Unaccepted
  • 板块P1464 Function
  • 楼主Sxu520
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/9/22 19:03
  • 上次更新2024/9/22 21:06:47
查看原帖
100 但是Unaccepted
873151
Sxu520楼主2024/9/22 19:03

subtask#1两个RE了 AC必关

#include<bits/stdc++.h>
using namespace std;

int main(){
	int a[25][25][25]={0};
	long long b[100050][3]={0};
	int n1,n2,n3,j;
	for(int i=0;i<=20;i++){
		for(int j=0;j<=20;j++){
			for(int k=0;k<=20;k++){
				if(i==0||j==0||k==0)
				a[i][j][k]=1;
				else if(i<j&&j<k)
				a[i][j][k]=a[i][j][k-1]+a[i][j-1][k-1]-a[i][j-1][k];
				else
				a[i][j][k]=a[i-1][j][k]+a[i-1][j-1][k]+a[i-1][j][k-1]-a[i-1][j-1][k-1];
			}
		}
	}                                                 //记忆化把a[0][0][0]到a[20][20][20]都存进这个三维数组 
	for(j=0;;j++){
		cin>>n1>>n2>>n3;
		if(n1==-1&&n2==-1&&n3==-1)
		break;
		b[j][0]=n1;
		b[j][1]=n2;
		b[j][2]=n3;
	}                                                 //用二维数组b存要求的数
	for(int i=0;i<j;i++){
		if(b[i][0]<0||b[i][1]<0||b[i][2]<0)
		cout<<"w("<<b[i][0]<<", "<<b[i][1]<<", "<<b[i][2]<<") = "<<1<<endl;
		else if(b[i][0]>20||b[i][1]>20||b[i][2]>20)
		cout<<"w("<<b[i][0]<<", "<<b[i][1]<<", "<<b[i][2]<<") = "<<a[20][20][20]<<endl;
		else
		cout<<"w("<<b[i][0]<<", "<<b[i][1]<<", "<<b[i][2]<<") = "<<a[b[i][0]][b[i][1]][b[i][2]]<<endl;
	}                                                 /*若有某个数小于0输出1,若有某个数大于20输出a[20][20][20]
	                                                  否则直接输出该组数据b[i][0]、b[i][1]、b[i][2]在a中对应的值*/
	return 0;
}
2024/9/22 19:03
加载中...