[NKU]sweet @ Google && TopCoder && CodeForces

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            33 Posts :: 1 Stories :: 15 Comments :: 0 Trackbacks
          只看了一題……
          題意大概是這樣,每隔M分鐘會來一個飛船并開始等待,每隔N分鐘會有一個傳送門,傳送走等待的飛船……求飛船平均等待時間
          (N,M<=1000000000)
          相當于求N-(M*i)%N的和(M*i%n==0需要特判停止之類的)……前面一部分可以拆開,求和,上公式,但是后面不行……
          于是乎,用新會用的HashMap算了個循環(huán)節(jié)……但是面對極限數(shù)據(jù)(循環(huán)節(jié)==N)貌似還是掛……
          萬般無奈之際,我通過觀察規(guī)律,還真發(fā)現(xiàn)了一個規(guī)律…直接上代碼吧……

           1 class Starport{
           2     
           3     long gcd(long n,long m){
           4         if (m==0return n;
           5         return gcd(m,n%m);
           6     }
           7 
           8     public double getExpectedTime(int n,int m){
           9         long tmp=gcd(n,m);
          10         long sum=n*n;
          11         sum-=n*(n+tmp)/2;
          12         double ans=sum;
          13         ans/=n;
          14         System.out.println(ans);
          15         return ans;
          16     }
          17 }

          當然,發(fā)現(xiàn)了這個規(guī)律之后,可以除n化簡之類的,不敘……
          Challenge時間,搞掉了一個硬爆的,有個爺們是直接循環(huán)的,但是貌似問題不在速度,我沒Cha掉……有個爺們代碼前面一堆廢話,我以為是類似hash的思路,后來才發(fā)現(xiàn)最后沒用那堆廢話,實際上程序還是公式……結(jié)果沒賺沒賠……
          rating->1487……又掉成藍了……我了個去……
          其實藍的不冤,畢竟現(xiàn)在思路還是不咋樣,有些東西其實感覺最終可以想出來,但是速度卻不能滿足競賽要求……
          總之還是奮戰(zhàn)吧……
          posted on 2010-12-09 02:23 sweetsc 閱讀(151) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 宝应县| 安宁市| 中卫市| 连云港市| 垣曲县| 稻城县| 鲜城| 阳山县| 湟源县| 迁西县| 达拉特旗| 南阳市| 工布江达县| 临湘市| 临邑县| 宜兴市| 娱乐| 偏关县| 定边县| 菏泽市| 唐河县| 三都| 大英县| 蛟河市| 嵩明县| 吉林市| 盐源县| 滦南县| 苍山县| 岚皋县| 穆棱市| 自贡市| 阿瓦提县| 梅州市| 井冈山市| 巴塘县| 晋宁县| 工布江达县| 崇礼县| 体育| 合作市|