(找水王)编程思维训练
生活随笔
收集整理的這篇文章主要介紹了
(找水王)编程思维训练
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、設計思路:
??每次刪除兩個不同的ID(不管是否包含“水王”的ID),那么,在剩下的ID列表中,“水王”
ID出現的次數仍然超過總數的一半。
??所以即每次刪除兩個不同的ID,最后剩下的ID就是水王ID。
二、代碼實現:
package 水王是誰;public class Shuiwangshishei {public static int jishu(int p[], int n){ int a=0,b=0;for(int i=0; i<n; ++i){ if(a==0 || b==0){ a=p[i];b++;}else if(p[i]==a) b++;else b--; } return a;//此a即為“水王”的ID } }public static void main(String args[]){//以13個數代表13個帖子,每個數字代表分別的發帖人int a[]={1,3,3,4,3,5,2,2,3,7,3,3,3};int n=a.length;int shuiwangID=jishu(a,n);System.out.println("水王是"+shuiwangID);} }?
三、實驗截圖:
?
四、個人總結
??本題的重點是將大問題轉化成小問題,即把問題縮小化,在參考了網絡資料后豁然開朗。思維還有待鍛煉。
轉載于:https://www.cnblogs.com/hehejeson/articles/5499424.html
總結
以上是生活随笔為你收集整理的(找水王)编程思维训练的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 课堂派派典型用户和场景
- 下一篇: 搜狗输入法评价