24h購物| | PChome| 登入
2009-11-14 19:19:11| 人氣996| 回應0 | 上一篇 | 下一篇

95高市資訊學科能力競賽 運算式 + - 符號設定問題

推薦 0 收藏 0 轉貼0 訂閱站台

在此先感謝 andy3466 提供想法

作法:數學

±1±2....±n=k

我們可以這樣想少一個數字m,sum將會減少2*m
若k-sum為偶數,則可以從1~n之內找出數字=之間的差

/************************************************************/

#include<stdlib.h>
#include<stdio.h>
#include<math.h>
main()
{
  int k;
  while(scanf("%d",&k)==1)
      {
         k=abs(k);
         int n=(int)sqrt(k);
         for(;;n++)
             if(n*(n+1)/2>=k&&(k-n*(n+1)/2)%2==0) {printf("%d\n",n);break;}
      }
  return 0;
}

台長: 來源不明
人氣(996) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 數位資訊(科技、網路、通訊、家電) | 個人分類: 資訊競賽 |
此分類下一篇:95高市資訊學科能力競賽 K-間隔 (K-GAP) 子字串
此分類上一篇:IOI研習營模考2-1三元樹

是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入圖片中算式的結果(可能為0) 
(有*為必填)
TOP
詳全文