Tối ưu bài toán có sử dụng hai mảng


(Lê Trí Tâm) #1

Em có một bài toán như thế này:

Nhập vào một số n (2<=n<=1000). Nhập vào tọa độ của n điểm trên mặt phẳng tọa độ. Nhập vào n
vector. Biết rằng ứng với mỗi điểm trong n điểm đã nhập thì có một vector trong số n vector tương ứng sao cho tồn tại một (hoặc nhiều) điểm chốt mà mọi vector khi được bắt đầu tại điểm nó tương ứng sẽ đều đến được điểm chốt đó. Xuất ra toạ độ điểm chốt đó! Nếu nhiều đáp án thì xuất bất kỳ cái nào cũng được. Khi nhập thì không cần nhập theo thứ tự tương ứng giữa điểm và vector

Ví dụ với n=2
input 2 điểm: 2 5; -6 4;
input 2 vector: 7 -2; -1 -3;
output sẽ là: 1 -2 (như hình minh họa)!

Vấn đề ở chỗ là em sử dụng 2 mảng, một mảng theo trục x và một mảng theo trục y, mỗi mảng khai báo là 1000 phần tử. Chương trình chạy ok nhưng lại không nhập được khi n=1000; vậy làm sao để tối ưu ạ?


(HK boy) #2

Code của bạn đâu?

Hay là bạn không nhập nổi 1000 phần tử?


(Tú Anh Hoàng) #3
int n;
int sx = 0, sy = 0;
for(int i = 1; i <=2*n; i++){
 int x,y; cin>>x>>y; sx+=x; sy+=y;
}
cout<<(sx/n)<<" "<<(sy/n)<<endl;

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?