Skip to content
Narrow screen resolution Wide screen resolution Auto adjust screen size Increase font size Decrease font size Default font size default color grey color
         
 | 
VNOI - Olympic tin học Việt Nam

Điểm tin VOJ

Số thành viên:6040
Số bài tập:1001
Số bài nộp:722923
Bài nộp hôm nay:0

Top 10 thành viên xuất sắc

HạngThành viênĐiểm
1mr_invincible587.9
2white_cobra418.6
3hieult403.4
4phaleq384.0
5vodanh9x368.2
6con_nha_ngheo352.0
7flash_mt350.2
8darksabers349.8
9yenthanh132345.3
10rockman9x_94343.1

Danh tiếng các thành viên

HạngThành viênĐiểm
1mr_invincible+213
2conankudo+149
3khuc_tuan+137
4tuananhnb93+129
5khanhptnk+108
6hphong+103
7flash_mt+99
8paulmcvn+71
9technolt+70
10hoangle+63

Topcoder Vietnam

HạngThành viênĐiểm
Diễn đàn
Forum
Bài toán về xóa kí tự trùng trong xâu. (1 đang xem) ,(1) Khách
Bài viết dưới cùng Gửi trả lời Được ưa thích: 0
CHỦ ĐỀ - Bài toán về xóa kí tự trùng trong xâu.
#68207
Alexman113 (Thành viên)
Đã biết code đệ quy
Bài viết: 12
graphgraph
Thành viên gián tuyến Click vào đây để xem thông tin về thành viên này
Bài toán về xóa kí tự trùng trong xâu. 8 năm, 2 tháng trước   (+0)
Viết chương trình nhập vào hai xâu S1, S2. Hãy xóa hết tất cả những xâu S1 trong xâu S2 rồi xuất ra màn hình.
 
Đã lưu IP Đã lưu IP  
  Đã khóa chức năng gửi bài.
#68209
yugi139 (Thành viên)
stupider-
Super fast coder
Bài viết: 54
graphgraph
Thành viên gián tuyến Click vào đây để xem thông tin về thành viên này
Trả lời: Bài toán về xóa kí tự trùng trong xâu. 8 năm, 2 tháng trước   (+0)
bạn dùng đoạn code này để xóa xâu rùi in ra màn hình
Code:
while pos(s1,s2)>0 do 
delete(s2,pos(s1,s2),length(s1));
btw, bài này bạn hỏi xóa kí tự trùng hay xóa xâu trùng vậy :-/
 
Đã lưu IP Đã lưu IP  
  Đã khóa chức năng gửi bài.
#68213
khanh duy sau rom (Thành viên)
duy_sau_rom+2
Biết code binary-indexed tree
Bài viết: 30
graphgraph
Thành viên gián tuyến Click vào đây để xem thông tin về thành viên này
Trả lời: Bài toán về xóa kí tự trùng trong xâu. 8 năm, 2 tháng trước   (+0)
yugi139 viết:
QUOTE:
bạn dùng đoạn code này để xóa xâu rùi in ra màn hình :)
Code:
while pos(s1,s2)>0 do 
delete(s2,pos(s1,s2),length(s1));
Theo mình nghĩ đề này ý là xâu s1 vốn nằm trong s2. nếu làm theo cách của bạn thì có thể làm cho kết quả sai. ví dụ, s1 là abc, s2 là aabcbc, z trong s2 chỉ có 1 xâu s1, nhưng chạy đoạn ct trên thì sẽ xóa hết luôn.
 
Đã lưu IP Đã lưu IP  
  Đã khóa chức năng gửi bài.
#68215
yugi139 (Thành viên)
stupider-
Super fast coder
Bài viết: 54
graphgraph
Thành viên gián tuyến Click vào đây để xem thông tin về thành viên này
Trả lời: Bài toán về xóa kí tự trùng trong xâu. 8 năm, 2 tháng trước   (+0)
khanh duy sau rom viết:
QUOTE:
yugi139 viết:
QUOTE:
bạn dùng đoạn code này để xóa xâu rùi in ra màn hình :)
Code:
while pos(s1,s2)>0 do 
delete(s2,pos(s1,s2),length(s1));
Theo mình nghĩ đề này ý là xâu s1 vốn nằm trong s2. nếu làm theo cách của bạn thì có thể làm cho kết quả sai. ví dụ, s1 là abc, s2 là aabcbc, z trong s2 chỉ có 1 xâu s1, nhưng chạy đoạn ct trên thì sẽ xóa hết luôn. :|
thế nên mình mới hỏi lại đề
 
Đã lưu IP Đã lưu IP  
  Đã khóa chức năng gửi bài.
#68218
Alexman113 (Thành viên)
Đã biết code đệ quy
Bài viết: 12
graphgraph
Thành viên gián tuyến Click vào đây để xem thông tin về thành viên này
Trả lời: Bài toán về xóa kí tự trùng trong xâu. 8 năm, 2 tháng trước   (+0)
Dạ đề là như anh duy_sau_rom+2 nói ạ.
 
Đã lưu IP Đã lưu IP  
  Đã khóa chức năng gửi bài.
#68220
amydolly (Thành viên)
amydolly+3
Đã biết code đệ quy
Bài viết: 18
graphgraph
Thành viên gián tuyến Click vào đây để xem thông tin về thành viên này
Trả lời: Bài toán về xóa kí tự trùng trong xâu. 8 năm, 2 tháng trước   (+0)
Mình nghĩ là test này làm như vậy vẫn đúng chứ nhỉ ^^
Đầu tiên pos(s1, s2)= 2;
Ta delete(s2, 2, 3) thì s2 sẽ bị xóa đi 3 kí tự và trở thành abc
khi đó pos(s1, s2)= 1
Và tiếp theo ta xóa hết.
Chạy chương trình test đó vẫn đúng mà

Mình nghĩ vấn đề chỉ là giới hạn xâu là bao nhiêu thôi. Tại lệnh delete mất O(n) cơ
Nếu n= 1000 thì làm thế này ok (n= độ dài xâu)

khanh duy sau rom viết:
QUOTE:
yugi139 viết:
QUOTE:
bạn dùng đoạn code này để xóa xâu rùi in ra màn hình :)
Code:
while pos(s1,s2)>0 do 
delete(s2,pos(s1,s2),length(s1));
Theo mình nghĩ đề này ý là xâu s1 vốn nằm trong s2. nếu làm theo cách của bạn thì có thể làm cho kết quả sai. ví dụ, s1 là abc, s2 là aabcbc, z trong s2 chỉ có 1 xâu s1, nhưng chạy đoạn ct trên thì sẽ xóa hết luôn. :|
 
Đã lưu IP Đã lưu IP  
  Đã khóa chức năng gửi bài.
#68241
khanh duy sau rom (Thành viên)
duy_sau_rom+2
Biết code binary-indexed tree
Bài viết: 30
graphgraph
Thành viên gián tuyến Click vào đây để xem thông tin về thành viên này
Trả lời: Bài toán về xóa kí tự trùng trong xâu. 8 năm, 2 tháng trước   (+0)
Nhưng tớ nghĩ test đó chỉ ra được là abc thôi, không phải là xâu rỗng. Vì abc này vốn không ở gần nhau, chỉ mới bị kéo lại gần nhau sau khi xóa xâu thôi.
 
Đã lưu IP Đã lưu IP  
  Đã khóa chức năng gửi bài.
#68242
amydolly (Thành viên)
amydolly+3
Đã biết code đệ quy
Bài viết: 18
graphgraph
Thành viên gián tuyến Click vào đây để xem thông tin về thành viên này
Trả lời: Bài toán về xóa kí tự trùng trong xâu. 8 năm, 2 tháng trước   (+0)
ukm.. C thử viết chương trình ra xem
khanh duy sau rom viết:
QUOTE:
Nhưng tớ nghĩ test đó chỉ ra được là abc thôi, không phải là xâu rỗng. Vì abc này vốn không ở gần nhau, chỉ mới bị kéo lại gần nhau sau khi xóa xâu thôi.
 
Đã lưu IP Đã lưu IP  
  Đã khóa chức năng gửi bài.
#68244
khanh duy sau rom (Thành viên)
duy_sau_rom+2
Biết code binary-indexed tree
Bài viết: 30
graphgraph
Thành viên gián tuyến Click vào đây để xem thông tin về thành viên này
Trả lời: Bài toán về xóa kí tự trùng trong xâu. 8 năm, 2 tháng trước   (+0)
Code:
var s1,s2,s:string;
begin
readln(s1);
readln(s2);
while pos(s1,s2)>0 do
        begin
        s:=s+copy(s2,1,pos(s1,s2)-1);
        delete(s2,1,pos(s1,s2)+length(s1)-1);
        end;
        s:=s+s2;
        writeln(s);
        readln;
end.
tớ nghĩ có thể viết z, xóa chừng nào không còn nữa thì thôi. nhưng mà chắc chỉ chạy được với xâu nhỏ thôi.
 
Đã lưu IP Đã lưu IP  
  Đã khóa chức năng gửi bài.
Bài viết trên cùng Gửi trả lời
Powered by FireBoardBài viết mới nhất từ diễn đàn cho các chương trình nhận tin RSS