ULSG T2 TLE 求助!
  • 板块学术版
  • 楼主SJZ2010
  • 当前回复3
  • 已保存回复3
  • 发布时间2023/6/11 18:49
  • 上次更新2023/10/23 13:20:58
查看原帖
ULSG T2 TLE 求助!
809729
SJZ2010楼主2023/6/11 18:49
#include<bits/stdc++.h>
using namespace std;
bool mer[1005][1005];
long long mp[1005][1005],n;
long long sum=0;
int main(){
	//freopen("game003.in","r",stdin);
	ios::sync_with_stdio(0);
	cin>>n;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=n;j++)
			cin>>mp[i][j];
	for(int i=n-1;i>=1;i--){
		for(int j=1;j<=n;j++){
			if(mp[i][j]==0)
				continue;
			int p=i;
			while(mp[p+1][j]==0){
				if(p==n)
					break;
				swap(mp[p+1][j],mp[p][j]),
				swap(mer[p+1][j],mer[p][j]),
				p++;
			}
			if(mp[p+1][j]==mp[p][j]&&!mer[p+1][j]){
				mer[p+1][j]=mer[p][j]=1;
				mp[p+1][j]*=2;
				sum+=mp[p+1][j];
				mp[p][j]=0;
			}
		}
	}
	cout<<sum<<endl;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++)
			cout<<mp[i][j]<<' ';
		cout<<endl;
	}
	return 0;
}

比赛时没把 freopen 注释掉,爆零了,那么怎么解决 TLETLE 呢?(8080 分)

2023/6/11 18:49
加载中...