zoukankan      html  css  js  c++  java
  • 寻找水王

    一、设计思路

    1、我采用的方法是两两计算抵消的想法,相邻的两个ID依次比较。

    2、计数器用来表示水王出现的次数。默认当计数器为0时,水王就是当前的ID,因此水王出现一次,计数器从0加1,然后比较后一个ID,如果相同,意味着水王又出现一次,计数器就自加1;如果不同,意味着水王没有出现第二次,直接抵消,计数器就减1。当计数器为0,水王又是当前ID,依次循环。

    二、代码

    //2016/5/18 信1301-1 黄山成 20133048 寻找水贴王的ID
    #include<iostream>
    using namespace std;
    #include<string>
    
      //通过两两抵消用来找出水王的函数
    void King(string shui_ID[],int amount_ID)  
    {  
        string king;  
        int i=0;  
        int counts=0;
       
        for( i=0;i<amount_ID;i++)  
        {  
            if(counts ==0 )  
            {  
                king = shui_ID[i];  
                counts = 1;  
            }  
            else  
            {  
                if(king==shui_ID[i])  //判断当前的ID是否和后一个相同
                {
                    counts ++;
                }
                else  
                { 
                    counts --; 
                }
            }  
        }  
        cout<< king;  
    }  
    int main()  
    {  
        string ID[10] = {"波风水门","我是冠军","双杰伦","666666一水到底","666666一水到底","蜡笔小新心","666666一水到底","666666一水到底","666666一水到底","666666一水到底"};  
        cout<<"ID: "<<endl;
        for(int i=0;i<10;i++)
        {
            cout<<ID[i]<<endl;
        }
        cout<<"The king of shui is:"<<" ";
        King(ID,10);  
        cout<<endl;
        return 0;  
    }  

    三、截图

    四、总结

    这次的寻找水王的编程想法是老师所说的两两抵消,但是我在他的提示下,使用的是两两比较然后计数的思想。遇到的困难就是计数器的位置设置不对,最后

    通过不断的草稿纸演算确定。其中的一个收获就是:不用遍历也能实现。

  • 相关阅读:
    this is test,,this is only test!!!
    js设置鼠标悬停改变背景色
    免费数据恢复软件
    ORA-00600: 内部错误代码
    js控制只能输入数字和控制小数的位数
    Eclipse换背景色
    记JavaScript的入门学习(二)
    html+css基础篇
    记JavaScript的入门学习(一)
    前端之Photoshop切片
  • 原文地址:https://www.cnblogs.com/surver/p/5506933.html
Copyright © 2011-2022 走看看