Announcement

Collapse
No announcement yet.

[isteam test 2011] k4,5,6

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

  • #46
    học pascal r đọc vào C như bị dị ứng ấy! hix quải quá ko biết ngày tháng sau này C kiểu nào!

    Comment


    • #47
      ủa, mà cái này là đề thi gì đây?
      mình đi học đầy đủ mà sao không nghe nói gì đến hết nhỉ????

      Comment


      • #48
        Originally posted by 11520673 View Post
        học pascal r đọc vào C như bị dị ứng ấy! hix quải quá ko biết ngày tháng sau này C kiểu nào!
        Gáng lên thui, dù sao cũng có nền tản quen với ngôn ngữ lập trình mà, đỡ hơn nhiều người k biết gì hết rồi Sau này toàn dùng C.....
        <script charset="Shift_JIS" src="http://chabudai.sakura.ne.jp/blogparts/honehoneclock/honehone_clock_tr.js"></script>

        Comment


        • #49
          Ờ, giờ C mình cũng mù tịt, đang học.
          Nếu bạn không đủ giỏi, đừng cố đi ngược đám đông.

          Comment


          • #50
            Đọc qua cái title tưởng cái gì chứ, chưa nghe cái istream test này bao giờ =))
            Không có gì là không thể nếu chúng ta có lòng tin.
            http://gabrielbl.com

            Comment


            • #51
              Originally posted by 11520288
              thanks nhìu nha, để lát trưa rãnh mình xem lại bài 1,2. Nếu nói vậy thì thật ra bài 1 mới ra bài hay nhất, đang có 2 ý tưởng giải khác nhau về bài 1, nhưng chưa nói ra trước, mất vui hihi. Bài 2 thì thôi k bàn nữa, mình k rành lịch lắm.
              Bài 1:
              Python 2.7.2 (default, Jun 29 2011, 11:17:09)
              [GCC 4.6.1] on linux2
              Type "help", "copyright", "credits" or "license" for more information.
              >>> sum_string=lambda x,y: str(int(x)+int(y))
              >>> sum_string("3","4")
              '7'
              >>>
              bài 2 bài 3 đang suy nghĩ code python sao cho ngắn nhất (Python Line In One)

              Comment


              • #52
                ui, code cả một ngày, mấy người làm kinh quá . hi . mà cái isteam này là câu lạc bộ nào ta, sao năm nay mình mới nghe.hihi.

                Comment


                • #53
                  Originally posted by 11520118 View Post
                  Bài 1:
                  Python 2.7.2 (default, Jun 29 2011, 11:17:09)
                  [GCC 4.6.1] on linux2
                  Type "help", "copyright", "credits" or "license" for more information.
                  >>> sum_string=lambda x,y: str(int(x)+int(y))
                  >>> sum_string("3","4")
                  '7'
                  >>>
                  bài 2 bài 3 đang suy nghĩ code python sao cho ngắn nhất (Python Line In One)
                  Bài 1, dùng python mà chú cũng phải code à =)) Python implement sẵn BigInt datatype rồi, gõ biểu thức vào là nó tính thôi, khè thì khè bằng bài 3 ấy. (chuckle)

                  Comment


                  • #54
                    Originally posted by 11520118 View Post
                    Bài 1:
                    Python 2.7.2 (default, Jun 29 2011, 11:17:09)
                    [GCC 4.6.1] on linux2
                    Type "help", "copyright", "credits" or "license" for more information.
                    >>> sum_string=lambda x,y: str(int(x)+int(y))
                    >>> sum_string("3","4")
                    '7'
                    >>>
                    bài 2 bài 3 đang suy nghĩ code python sao cho ngắn nhất (Python Line In One)
                    Cái này cộng được những số trên 50 chữ số ko ?
                    Nếu bạn không đủ giỏi, đừng cố đi ngược đám đông.

                    Comment


                    • #55
                      Originally posted by 07520004 View Post
                      Bài 1, dùng python mà chú cũng phải code à =)) Python implement sẵn BigInt datatype rồi, gõ biểu thức vào là nó tính thôi, khè thì khè bằng bài 3 ấy. (chuckle)
                      Em còn gà mà

                      Comment


                      • #56
                        Originally posted by 11520126 View Post
                        Cái này cộng được những số trên 50 chữ số ko ?
                        >>> sum_string("12345678901234567890123456789012345678 90","1234567890123456789012345678901234567890")
                        '2469135780246913578024691357802469135780'

                        Comment


                        • #57
                          Originally posted by 11520126 View Post
                          Cái này cộng được những số trên 50 chữ số ko ?
                          Một byte lưu được 2 chữ số. Tùy Ram của em thôi. Chấp em code bằng pascal mãn kiếp cũng không optimize hơn nó. Còn nếu dùng C thì trình em phải cao lắm mới chạy nhanh hơn nó được

                          Comment


                          • #58
                            Originally posted by 10520299 View Post
                            ui, code cả một ngày, mấy người làm kinh quá . hi . mà cái isteam này là câu lạc bộ nào ta, sao năm nay mình mới nghe.hihi.
                            Originally posted by 11520399 View Post
                            ủa, mà cái này là đề thi gì đây?
                            mình đi học đầy đủ mà sao không nghe nói gì đến hết nhỉ????
                            Originally posted by 09520548 View Post
                            Đọc qua cái title tưởng cái gì chứ, chưa nghe cái istream test này bao giờ =))
                            Nhóm này của khoa HTTT, thông báo tuyển mem có thông báo trên forum mà : http://forum.uit.edu.vn/showthread.php?t=1821
                            Nếu bạn không đủ giỏi, đừng cố đi ngược đám đông.

                            Comment


                            • #59
                              Originally posted by 07520004 View Post
                              Một byte lưu được 2 chữ số. Tùy Ram của em thôi. Chấp em code bằng pascal mãn kiếp cũng không optimize hơn nó. Còn nếu dùng C thì trình em phải cao lắm mới chạy nhanh hơn nó được
                              Cái này hay nhỉ
                              Nếu bạn không đủ giỏi, đừng cố đi ngược đám đông.

                              Comment


                              • #60
                                Bài này là Tùng viết ngôn ngữ C# bằng visual studio 2010, lười làm 3 bài nên gộp 3 bài chung một project lun..
                                Chắc cũng không sai đề ^^ Thử kết quả thì cũng khả quan, mong sao không vướng lỗi gì, hì.. Bài 1 thì đề không nói rõ nên lúc đó cũng chỉ nghĩ đơn giản là dùng int thôi. Code hơi dài vì Tùng không biết thu mấy cái xét trường hợp ngoại lệ cho gọn hơn, các bạn thông cảm góp ý nhé. Chưa post code bao giờ không biết có đúng không, mình có file project đính kèm phía dưới bạn nào rảnh test giùm hak.

                                Code:
                                using System;
                                using System.Collections.Generic;
                                using System.ComponentModel;
                                using System.Data;
                                using System.Drawing;
                                using System.Linq;
                                using System.Text;
                                using System.Windows.Forms;
                                
                                
                                namespace ISTest
                                {
                                    using System.Windows.Forms;
                                    
                                    public partial class Form1 : Form
                                    {
                                        public Form1()
                                        {
                                            InitializeComponent();
                                        }
                                        #region Hàm kiểm tra số nguyên tố
                                        public static bool nguyento(int x)
                                        {
                                            bool f = true;
                                            for (int i = 1; i < x; i++)
                                            {
                                                if (((x % i) == 0) & (i > 1))
                                                {
                                                    f = false;
                                                }
                                            }
                                
                                            return f;
                                        }
                                        #endregion
                                        private void label4_Click(object sender, EventArgs e)
                                        {
                                
                                        }
                                        #region Bài 1
                                        private void button1_Click(object sender, EventArgs e)
                                        {
                                            if (sh1.Text.Trim().Equals("") || (sh2.Text.Trim().Equals("")))
                                           {
                                                MessageBox.Show("Chưa nhập đầy đủ hai số hạng", "Error!",
                                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                                return;
                                           }
                                            int a=0, b=0;
                                            try
                                            {
                                                a = Int32.Parse(sh1.Text.Trim());
                                                b = Int32.Parse(sh2.Text.Trim());
                                            }
                                            catch (Exception ex)
                                            {
                                                MessageBox.Show(ex.Message.ToString(), "Lỗi định dạng số",
                                                    MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                            }
                                            tong.Text = "";
                                            tong.Text = Convert.ToString(a + b);
                                        }
                                        #endregion
                                        #region Bài 2
                                        private void button2_Click(object sender, EventArgs e)
                                        {
                                            if (d.Text.Trim().Equals("") || m.Text.Trim().Equals("") || y.Text.Trim().Equals(""))
                                            {
                                                MessageBox.Show("Chưa nhập đầy đủ dữ liệu", "Error!",
                                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                                return;
                                            }
                                            int ngay = 0, thang = 0, nam = 0;
                                            try
                                            {
                                                ngay  = Int32.Parse(d.Text.Trim());
                                                thang = Int32.Parse(m.Text.Trim());
                                                nam   = Int32.Parse(y.Text.Trim());
                                            }
                                            catch (Exception ex)
                                            {
                                                MessageBox.Show(ex.Message.ToString(), "Lỗi định dạng số",
                                                    MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                            }
                                            if (ngay < 1 || thang < 1 || nam < 1 || ngay > 31 || thang > 12)
                                            {
                                                MessageBox.Show("Dữ liệu nhập chưa chính xác", "Error!",
                                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                                return;
                                            }
                                            if ((thang == 4 || thang == 6 || thang == 9 || thang == 11) & ngay == 31)
                                            {
                                                MessageBox.Show("Dữ liệu nhập chưa chính xác", "Error!",
                                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                                return;
                                            }
                                            else if (thang == 2 & ngay == 30)
                                            {
                                                MessageBox.Show("Dữ liệu nhập chưa chính xác", "Error!",
                                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                                return;
                                            }
                                            if ((nam % 4 != 0) & (thang == 2) & (ngay == 29))
                                            {
                                                MessageBox.Show("Năm này không phải là một năm nhuận, xin sửa lại", "Error!",
                                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                                return;
                                            }
                                            else if ((nam % 100 == 0) & (nam % 400 != 0))
                                            {
                                                MessageBox.Show("Năm này không phải là một năm nhuận, xin sửa lại", "Error!",
                                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                                return;
                                            }
                                            thu.Text = "";
                                            /* Tính số ngày dư (c) của những năm nhuận
                                                Số ngày dư = số năm chia hết cho 4 - số năm chia hết cho 100
                                                + số năm chia hết cho 400
                                            */
                                            int c;
                                            c = nam/4 - nam/100 + nam/400;
                                            // Tính số ngày trong năm đó (s)
                                            int[] t = new int [13]{0,31,28,31,30,31,30,31,31,30,31,30,31};
                                            int s;
                                            s = ngay;
                                                for (int i = 0; i < thang; i++)
                                			{
                                			 s = s + t[i];
                                			}
                                            // Tính tổng số ngày
                                            int n;
                                            n = (nam - 1) * 365 + c + s;
                                            // Thứ là kết quả của phép chia lấy dư s cho 7
                                            switch (n%7)
                                            {
                                               case 0:
                                                    thu.Text = "Chủ nhật";
                                                    break;
                                               case 1:
                                                    thu.Text = "Thứ hai";
                                                    break;
                                               case 2:
                                                    thu.Text = "Thứ ba";
                                                    break;
                                               case 3:
                                                    thu.Text = "Thứ tư";
                                                    break;
                                               case 4:
                                                    thu.Text = "Thứ năm";
                                                    break;
                                               case 5:
                                                    thu.Text = "Thứ sáu";
                                                    break;
                                               case 6:
                                                    thu.Text = "Thứ bảy";
                                                    break;
                                            }
                                        }
                                        #endregion
                                        #region Bài 3
                                        private void button3_Click(object sender, EventArgs e)
                                        {
                                            if (input.Text.Trim().Equals(""))
                                            {
                                                MessageBox.Show("Chưa nhập dữ liệu", "Error!",
                                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                                return;
                                            }
                                            int x = 0;
                                            try
                                            {
                                                x = Int32.Parse(input.Text.Trim());
                                            }
                                            catch (Exception ex)
                                            {
                                                MessageBox.Show(ex.Message.ToString(), "Lỗi định dạng số",
                                                    MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                            }
                                            if (x <= 1)
                                            {
                                                MessageBox.Show("Xin nhập số lớn hơn 1", "Error!",
                                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
                                                return;
                                            }
                                            output.Text = "";
                                            if (nguyento(x))
                                            {
                                                output.Text = Convert.ToString(x);
                                            }
                                            else 
                                            {
                                                for (int i = 1; i <= x/2; i++)
                                                {
                                                    if (nguyento(i) & nguyento(x - i))
                                                    {
                                                        output.Text = output.Text + Convert.ToString(x + " = " + i + " + " + (x - i)) + "\n";
                                                    }
                                                }
                                            }
                                            if (output.Text == "")
                                            {
                                                for (int i = 1; i <= x/3; i++)
                                                {
                                                    for (int j = i; j <= (x-i)/2 ; j++)
                                                    {
                                                        if (nguyento(i) & nguyento(j) & nguyento(x - i - j))
                                                        {
                                                            output.Text = output.Text + Convert.ToString(x + " = " + i + " + " + j + " + " + (x - i - j)) + "\n";
                                                        }
                                                    }
                                                }
                                            }
                                
                                
                                
                                        }
                                        #endregion
                                
                                        private void label1_Click(object sender, EventArgs e)
                                        {
                                
                                        }
                                
                                        private void label2_Click(object sender, EventArgs e)
                                        {
                                
                                        }
                                    }
                                }
                                11520467_BuiKimTung.zip
                                Last edited by 11520467; 22-10-2011, 00:40.

                                Comment

                                LHQC

                                Collapse
                                Working...
                                X