luyencode / comments

Server lưu trữ bình luận trên Luyện Code
https://luyencode.net
6 stars 3 forks source link

https://oj.luyencode.net/problem/COMPRESS #799

Open utterances-bot opened 2 years ago

utterances-bot commented 2 years ago

Nén xâu - Luyện Code Online

https://oj.luyencode.net/problem/COMPRESS

ghost commented 2 years ago

Đây là lời giải của mình đã AC. Nếu bạn đã cố gắng mà chưa làm được thì có thể tham khảo lời giải của mình.

Xem code AC

```cpp #include #define FOR(i, l, r) for(int i = l; i <= r; ++i) #define FOD(i, l, r) for(int i = l; i >= r; --i) #define ll long long #define ug unsigned long long using namespace std; // Topic variable. string s; // Auxiliary variable. //___________________ bool check(string s1, int n) { string t = ""; FOR(i, 1, n) { t += s1; } return (t == s); } void solve() { string z; int k; int beg = s.length(); FOR(i, 1, beg) { if (beg % i == 0) { z = s.substr(0, i); k = beg / i; if (check(z, k)) { break; } } } cout << k << z; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cin >> s; solve(); return 0; } ```

dinhtrung0902 commented 1 year ago

Đây là code java mình chạy trên ide khác thì đã đúng theo đề bài nhưng không được ac, ai có thể giúp mình tìm ra cách tối ưu hơn để được ac với ạ.

dinhtrung0902 commented 1 year ago

import java.util.Scanner;

class xau{ String s; String t=""; int k=0; public void nhap() { Scanner sc=new Scanner(System.in); s=sc.next(); for(int i=0;i<=s.length();i++) { if(i!=0 && s.charAt(i)==s.charAt(0)) { break; } t+=s.charAt(i); } k=s.length()/t.length();

}
public void xuat() {
    System.out.println(k+t);

}

}

class Test { public static void main(String[] args) { xau x=new xau(); x.nhap(); x.xuat(); } }