为什么全部TLE了啊
查看原帖
为什么全部TLE了啊
254609
miyou379楼主2022/7/29 21:34
#include <bits/stdc++.h>
using namespace std;

char tp;
stack<int>a;
stack<int>b;
char o = '0';
int length = 0;
int flag = 0;

int main() {
	for (int i = 1;; i++) {
		scanf("%c", &tp);
		if (tp == '.' || tp == '/' || tp == '%')
			o = tp;
		else if (tp >= '0' && tp <= '9' && o != '0')
			b.push(tp - '0');
		else if (tp >= '0' && tp <= '9' && o == '0')
			a.push(tp - '0');
		else if (tp == '\n') {
			if (o == '0')
				length = i - 1;
			break;
		}
	}
	//#1
	int x = length;
	if (o == '0') {
		for (int i = 1; i <= x; i++) {
			flag = 0;
			if (a.size() != 1 && a.top() == 0) {
				a.pop();
				length--;
				flag++;
			}
			if (flag == 0)
				break;
		}
		for (int i = 1; i <= length; i++) {
			printf("%d", a.top());
			a.pop();
		}
		return 0;
	}
	//#234
	if (o != '0') {
		char l = o;
		if (l == '.' || l == '/') {
			int length1 = a.size();
			int length2 = b.size();
			int x1 = length1;
			for (int i = 1; i <= x1; i++) {
				flag = 0;
				if (a.size() != 1 && a.top() == 0) {
					a.pop();
					length1--;
					flag++;
				}
				if (flag == 0)
					break;
			}
			for (int i = 1; i <= length1; i++) {
				printf("%d", a.top());
				a.pop();
			}
			printf("%c", l);
			int x2 = length2;
			for (int i = 1; i <= x2; i++) {
				flag = 0;
				if (b.size() == 1 && b.top() == 0) {
					cout << 0;
					return 0;
				} else if (b.size() != 1 && b.top() == 0) {
					b.pop();
					length2--;
					flag++;
				}
				if (flag == 0)
					break;
			}
			for (int i = 1; i <= length2; i++) {
				if (b.size() == 1 && b.top() == 0)
					break;
				printf("%d", b.top());
				b.pop();
			}
			return 0;
		}
		if (l == '%') {
			int length = a.size();
			int x = length;

			for (int i = 1; i <= x; i++) {
				flag = 0;
				if (a.size() != 1 && a.top() == 0) {
					a.pop();
					length--;
					flag++;
				}
				if (flag == 0)
					break;
			}
			for (int i = 1; i <= length; i++) {
				printf("%d", a.top());
				a.pop();
			}
			printf("%c", l);
			return 0;
		}
	}
	return 0;
}

不开O2优化的时候全是TLE,并且内存占用基本上都在80M以上 开了O2优化之后之前TLE的部分点直接变成MLE了 输入样例和自己输几组数据都没有问题,返回值也都是0,时间也正常,请求大犇援助!!!!!

2022/7/29 21:34
加载中...