zoukankan      html  css  js  c++  java
  • 张老师的生日问题

            private static void Demo()

            {

                List<int[]> list = new List<int[]>();

                list.Add(new int[] { 3, 4 });

                list.Add(new int[] { 3, 5 });

                list.Add(new int[] { 3, 8 });

                list.Add(new int[] { 6, 4 });

                list.Add(new int[] { 6, 7 });

                list.Add(new int[] { 9, 1 });

                list.Add(new int[] { 9, 5 });

                list.Add(new int[] { 12, 1 });

                list.Add(new int[] { 12, 2 });

                list.Add(new int[] { 12, 8 });

     

                int count = 0;

                List<int> list1 = new List<int>();//得到通过日期只出现一次的月份,即612

     

                foreach (int[] date1 in list)

                {

                    foreach (int[] date2 in list)

                    {

                        if (date1[1] == date2[1])

                        {

                            count++;

                        }

                    }

                    if (count == 1)

                    {

                        list1.Add(date1[0]);

                    }

                    count = 0;

                }

     

                List<int[]> list2 = new List<int[]>();//得到6月,12月的所有日期

                foreach (int i in list1)

                {

                    foreach (int[] j in list)

                    {

                        if (i == j[0])

                        {

                            list2.Add(j);

                        }

                    }

                }

                //除掉月份为612的日期

                foreach (int[] i in list2)

                {

                    list.Remove(i);//得到(34)(35)(38),(91)(95

                }

     

                //==============================================

                List<int[]> list3 = new List<int[]>();//得到日期出现两次的

                foreach (int[] date1 in list)

                {

                    foreach (int[] data2 in list)

                    {

                        if (date1[1] == data2[1])

                        {

                            count++;

                        }

                    }

                    if (count > 1)

                    {

                        list3.Add(date1);

                    }

                    count = 0;

                }

     

                foreach (int[] i in list3)

                {

                    list.Remove(i); //得到(34)(38)(91

                }

     

                //=============================================

                List<int[]> list4 = new List<int[]>();//月份重复数大于1个的

                foreach (int[] date1 in list)

                {

                    foreach (int[] date2 in list)

                    {

                        if (date1[0] == date2[0])

                        {

                            count++;

                        }

                    }

                    if (count > 1)

                    {

                        list4.Add(date1);

                    }

                    count = 0;

                }

     

                foreach (int[] i in list4)

                {

                    list.Remove(i); //91

                }

     

                foreach (int[] j in list)

                {

                    Console.WriteLine("张老师的生日为:" + j[0] + "" + j[1] + "");

                }

                Console.ReadLine();

            }

  • 相关阅读:
    CF G. Running Competition (NTT, 思维)
    ABC 177 F
    牛客练习赛68 D.牛牛的粉丝 (期望DP,矩阵快速幂)
    CF E
    HDU 6761 Minimum Index (字符串--Lyndon分解)
    D. GameGame (思维、博弈)
    P2533 最小圆覆盖
    P4049 [JSOI2007]合金
    P2510 [HAOI2008]下落的圆盘
    P3205 [HNOI2010]合唱队
  • 原文地址:https://www.cnblogs.com/cyan/p/1606947.html
Copyright © 2011-2022 走看看