Announcement

Collapse
No announcement yet.

[Hè 2016] - Trao đổi Cuộc thi Lập trình UIT ACM Online lần 1

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 14520820
    replied
    Originally posted by 15520203 View Post
    Lúc sau đề đã được sửa lại là 'mam' rồi nha, chắc các bạn chưa cập nhật lại đề.
    tks bạn. đề sửa mà mình k để ý gì hết, thói quen là thấy đề rồi down về máy hết r coi :hungry:

    Originally posted by 15520203 View Post
    Cùng chung suy nghĩ nhưng mình nghĩ trong đề ghi như vầy thì chắc phải là dãy ký tự (> 2) thì mới tính
    cái này ảo nhỉ :shot:
    Last edited by 14520820; 08-09-2016, 21:05. Reason: sửa chính tả

    Leave a comment:


  • 15520203
    replied
    Originally posted by 14520820 View Post
    cho mình hỏi ngu xíu nha. ai giải thích hộ cái test mẫu trong câu D được không. mình chả hiểu vì sao.
    [ATTACH=CONFIG]19849[/ATTACH]
    Originally posted by 15520426 View Post
    cái này e cũng k hiểu..tại sao chữ mama là chuỗi đối xứng đc. còn 2 cái kia thì không nói rồi


    Lúc sau đề đã được sửa lại là 'mam' rồi nha, chắc các bạn chưa cập nhật lại đề.

    Originally posted by 14520820 View Post
    nhưng tại sao 'uit' không chuyển thành 'u' đc. 'u' cũng đối xứng mà?
    'dadz' => 'dad' thì cái kia cũng bỏ 2 ký tự đi được chứ, phải k?
    Cùng chung suy nghĩ nhưng mình nghĩ trong đề ghi như vầy thì chắc phải là dãy ký tự (> 2) thì mới tính

    A palindrome is a word, phrase, number, or other sequence of characters which reads
    the same backward or forward.

    Leave a comment:


  • UIT.ACM
    replied
    KẾT QUẢ CUỘC THI LẬP TRÌNH UIT ACM ONLINE LẦN 1

    BTC xin chúc mừng 3 bạn đã đoạt giải Cuộc thi lập trình UIT ACM Online lần 1:
    - Giải nhất: Bạn Nguyễn Trung Đức, MSSV: 13520211
    - Giải nhì: Bạn Nguyễn Văn Thái, MSSV: 14520820
    - Giải ba: Bạn Nguyễn Văn Thông, MSSV: 14520903

    Các bạn liên hệ phòng A201 để nhận giải thưởng nhé.
    Tham khảo đề tại: http://goo.gl/bDAIuu
    Scoreboard: http://acm.uit.edu.vn/scoreboard/

    Leave a comment:


  • 14520820
    replied
    Originally posted by 15520426 View Post
    cái này e cũng k hiểu..tại sao chữ mama là chuỗi đối xứng đc. còn 2 cái kia thì không nói rồi
    nhưng tại sao 'uit' không chuyển thành 'u' đc. 'u' cũng đối xứng mà?
    'dadz' => 'dad' thì cái kia cũng bỏ 2 ký tự đi được chứ, phải k?

    Leave a comment:


  • 15520426
    replied
    Originally posted by 14520820 View Post
    cho mình hỏi ngu xíu nha. ai giải thích hộ cái test mẫu trong câu D được không. mình chả hiểu vì sao.
    [ATTACH=CONFIG]19849[/ATTACH]
    cái này e cũng k hiểu..tại sao chữ mama là chuỗi đối xứng đc. còn 2 cái kia thì không nói rồi

    Leave a comment:


  • 14520820
    replied
    cho mình hỏi ngu xíu nha. ai giải thích hộ cái test mẫu trong câu D được không. mình chả hiểu vì sao.
    Untitled.png

    Leave a comment:


  • 16521374
    replied
    Tại sao trường tổ chức thi mà không thông báo với em một tiếng. huhu, vậy là lỡ rồi

    Leave a comment:


  • 14520674
    replied
    Originally posted by 14520820 View Post
    sai rồi nha
    19991111 => 19999991
    chứ k phải 20000002
    thanks đã hiểu

    Leave a comment:


  • 14520903
    replied
    Mình có chỉnh lại câu C cho dễ hiểu hơn:

    + Ý tưởng:
    xét C = a[i] và D = a[j] (j>i) đếm số cặp (A = a[x]) + (B = a[y]) thỏa mãn (A+B)+(C+D)=0 (x,y<i; x!=y)
    + Độ phức tạp O(N^2)

    Code:
    #include<bits/stdc++.h>
    using namespace std;
    
    long long a[2010];
    long long b[4000010];
    
    long long i,j,N,Count;
    
    int main()
    {
        scanf("%lld",&N);
    
        for(i=0;i<N;i++)
        {
            scanf("%lld",&a[i]);
            a[i]+=1000000;
        }
    
        for(i=1;i<N-1;i++)
        {
            for(j=i+1;j<N;j++)
                Count+=b[4000000-a[i]-a[j]];
    
            for(j=0;j<i;j++)
                b[a[i]+a[j]]++;
        }
    
        printf("%lld",Count);
    }
    Last edited by 14520903; 25-08-2016, 07:12.

    Leave a comment:


  • 14520820
    replied
    BTC không bắt thí sinh thức để tra khảo về code hay gì nữa hả. giờ em đi ngủ đây. :go:
    chúc các bạn buổi sáng tốt lành :nosebleed:

    Leave a comment:


  • 14520820
    replied
    Originally posted by 14520674 View Post
    Xem giúp mình câu E với ko biết sai ở đâu
    Code:
    #include <iostream>#include <string>
    using namespace std;
    
    
    void inc(string &s,long long vt)
    {
        long long c=1, i=vt;
    
    
        while(c==1 && i>=0)
        {
            (s[i])++;
            c=0;
            if(s[i]>'9')
            {
                c=1;
                s[i]='0';
            }
            i--;
        }
        if(c==1)
            s="1"+s;
    }
    int main()
    {
        string s;
        long long v=-1;
        getline(cin,s);
        inc(s,s.length()-1);
        for(long long i=s.length()/2-1; i>=0; i--)
        {
            if(s[i]>s[s.length()-i-1])
            {
                s[s.length()-i-1]=s[i];
            }
            else
            if(s[i]<s[s.length()-i-1])
            {
                v=0;
                break;
            }
        }
        if(v==0)
        {
            v=s.length()/2+(s.length()%2==1)-1;
            inc(s,v);
            for(long long i=s.length()/2-1; i>=0; i--)
                s[s.length()-i-1]=s[i];
        }
        cout << s;
    }
    sai rồi nha
    19991111 => 19999991
    chứ k phải 20000002

    Leave a comment:


  • 13520469
    replied
    Originally posted by 15520426 View Post
    [ATTACH=CONFIG]19840[/ATTACH]
    Mình chạy cứ báo lỗi này...không biết làm sao..thêm dấu ngoặc tròn gì đâu nhỉ???
    Đó chỉ là warning không gây ảnh hưởng gì bạn ơi, complier cũng đã báo là biên dịch thành công rồi mà, có lẽ bạn sai thuật toán thôi.

    Leave a comment:


  • 15520426
    replied
    Câu G:
    Code:
    import java.util.Scanner;
    public class G {
        public static void main(String[] args) {
           Scanner in = new Scanner(System.in);
           String s;
           s= in.nextLine();
           String[] arr = s.split(" ");
           int n = arr.length ;
           String[] arr2 = new String[n];
            
           int i=0;
           while (n>0)
           {
               arr2[i]=arr[n-1];
               i++;
               n--;
           }
            for (int j=0;j<arr2.length;j++)
            {
                if (j!=arr2.length-1)
                    System.out.print(arr2[j]+" ");
                else
                    System.out.print(arr2[j]);
            }
        }  
    }

    Leave a comment:


  • 14520674
    replied
    Help

    Xem giúp mình câu E với ko biết sai ở đâu
    Code:
    #include <iostream>#include <string>
    using namespace std;
    
    
    void inc(string &s,long long vt)
    {
        long long c=1, i=vt;
    
    
        while(c==1 && i>=0)
        {
            (s[i])++;
            c=0;
            if(s[i]>'9')
            {
                c=1;
                s[i]='0';
            }
            i--;
        }
        if(c==1)
            s="1"+s;
    }
    int main()
    {
        string s;
        long long v=-1;
        getline(cin,s);
        inc(s,s.length()-1);
        for(long long i=s.length()/2-1; i>=0; i--)
        {
            if(s[i]>s[s.length()-i-1])
            {
                s[s.length()-i-1]=s[i];
            }
            else
            if(s[i]<s[s.length()-i-1])
            {
                v=0;
                break;
            }
        }
        if(v==0)
        {
            v=s.length()/2+(s.length()%2==1)-1;
            inc(s,v);
            for(long long i=s.length()/2-1; i>=0; i--)
                s[s.length()-i-1]=s[i];
        }
        cout << s;
    }

    Leave a comment:


  • 14520820
    replied
    Originally posted by 15520426 View Post
    [ATTACH=CONFIG]19840[/ATTACH]
    Mình chạy cứ báo lỗi này...không biết làm sao..thêm dấu ngoặc tròn gì đâu nhỉ???
    kết quả của bạn sai. bạn có thể up code lên đây mọi người xem. hoặc gửi code cho ai đó làm đc người ta sửa cho.

    Leave a comment:

LHQC

Collapse
Working...
X