Time of Update: 2018-12-04
看到這個題目簡單分析了一下,最後才發現原來就是一個數論知識。首先,題目主要是求從0,0能看到的點的個數。先考慮只有1×1的時候,三個點,根據圖明顯看出,只需要計算下三角,結果=下三角的個數×2再加1(斜率為1的點)。那麼我們只需要計算斜率從0到1之間的個數就行了,不包括1,包括0.結果設為sum,那麼最終就是2*sum+1. 1×1隻有一個斜率為0的2×2斜率有0,1/2(0已經算過了,以後不再算了),其實就多了一個斜率為1/2的。3×3的時候,有1/3,2/3兩個,比以前多了2個4×4的時候,
Time of Update: 2018-12-04
題目很好理解,就是去掉樹上的一個節點,看看剩下的子樹中最大的是多少,然後在這些最大值中求一個最小值,如果有多個點都是最小值,那麼找一個序號最小的節點。輸出節點號,和最小值。 經過簡單分析,dfs深度優先搜尋可以解決,只需要求出每個節點下子樹的總結點個數即可。舉例說明:設有一棵樹20個節點,其中有一個節點為u,u有兩個孩子節點,設u以下有10個節點,兩個孩子分別有6和4個節點,那麼對於u來說,最大是多少,應該是20 -
Time of Update: 2018-12-04
*題目大意:* 對於n堆石子,每堆若干個,兩人輪流操作,每次操作分兩步,* 第一步從某堆中去掉至少一個,第二步(可省略)把該堆剩餘* 石子的一部分分給其它的某些堆。最後誰無子可取即輸。*解題思路:* 1、先考慮1堆的時候,1堆當然是N點(必勝點),* 2、然後考慮2堆,細想一下可以發現,當2堆一樣時,這個時候* 的目的就是要把對方給逼到只有2堆都是1的時候,就能必勝了。* 但是想一下,後手只要模範先手所做的動作,那麼最後就會形成* 兩堆都是1的局勢,所以當2堆相同時,是一個P點(必敗點)。*
Time of Update: 2018-12-04
文章目錄 2、複雜度對比 最近碰到一個線段樹的題目,發現discuss中說可以用RMQ做,以前也瞭解過,但是沒有深入地去理解,今天查了一些資料,好好地整理一下。表面上RMQ,看著還挺進階,實際上就是一個簡單的dp,只不過這個dp有點高端,特別是狀態方程,形式上和原來沒什麼兩樣,但是內容上卻差別很大。好了廢話少說,看看例子。 1、什麼是RMQ呢?RMQ (Range Minimum/Maximum
Time of Update: 2018-12-04
大致題意:輸入m個長度為n的DNA序列,把他們按照逆序數從小到大穩定排序輸出。PS:“穩定排序”就是當序列中出現A1==A2時,排序前後A1與A2的相對位置不發生改變。 解題思路:沒難度,先求各個字串的逆序數,再按逆序數對字串快排,用qsort()函數。雖然快排不是穩定的排序,但是只要在定義定序函數cmp做適當處理,a==b時返回0,即不處理a和b,就不會改變他們之間的相對位置了。 快排是不穩定排序!! 但自己寫這個cmp,返回是return
Time of Update: 2018-12-04
先類比下,就會發現每個元素求和時,元素的係數是二項式係數,於是ans=sum(C(n-1,i)*a[i]/2^(n-1)),但是n太大,直接求會溢出,其實double的範圍還是挺大的,所以可以將組合數轉化成對數,而且對數還有遞推求法:logC(n,k+1)=log(n,k)+log(n-k)-log(k+1) #include <iostream>#include <cmath>#include <cstdio>using namespace
Time of Update: 2018-12-04
我們知道,線上程中無法使用像updateData(false)這些全域函數,但是我們又想線上程函數中顯示一些改變,那麼我們該如何辦呢?1、比較好的辦法:hGpsThread = CreateThread(NULL, NULL, GPSThreadProc, this, NULL, &m_dwThreadID); 傳遞的this指標可以進行強制轉換,線程函數:DWORD CGPS_TestDlg::GPSThreadProc(LPVOID pArg)
Time of Update: 2018-12-04
這個題目算是比較簡單的題目,但是過的人不是很多,AC率也不是很高,主要是這個問題要注意和多細節,卡精度倒也沒那麼嚴格1、如果矩形的四個頂點到圓心的距離全部大於半徑,那麼顯然不會相交(很多人都死在這裡)2、把圓圓心按照矩形的邊滾一圈,圓所覆蓋的地區,只要圓心在這個地區內部就符合相交的條件具體判斷見下面代碼三種情況,離橫邊距離,豎邊距離,和四個頂點的距離#include <iostream>#include <string.h>#include <stdio.h>
Time of Update: 2018-12-04
/* **************************** * 半形<=>全形 * * [NB聯盟] * * Writer YuPing * **************************** * 參數說明: * str:要轉換的字串 * flag:標記,為0時半轉全,為非0時全轉半 * 傳回值類型:字串 **************************** */ function DBC2SBC(str,flag) { var i; var
Time of Update: 2018-12-04
表示這個題目很坑,竟然普通的枚舉角度也能過,在現場如果沒敢這麼乾的童鞋肯定後悔死了,不過直接枚舉跑的時間還是沒三分枚舉快的三分枚舉的思想其實和二分差不多,具體為什麼對,看看代碼是怎麼枚舉的,稍微想想就能明白了!直接枚舉:#include <iostream>#include <stdio.h>#include <string.h>#include <math.h>#define eps 1e-8using namespace
Time of Update: 2018-12-04
題目連結:http://poj.org/problem?id=3368題意:給定n個升序數組,然後輸入查詢區間,要求輸出這個區間內相同數位最大個數解題思路:RMQ演算法其實這個題目想到怎麼用RMQ演算法就基本上搞定了,如果想不到那麼就要費事一點了其實這個題目痛點在於輸入的查詢區間不固定,有可能一串相連的的相同數位被查詢區間分割開了那麼這樣就比較麻煩了,處理起來也比較費事,可是稍微想一下,可以把一個查詢分開成兩個部分來查詢,一個是前面部分被分割的部分,一個是後面的部分在用RMQ初始化之間我們先做了
Time of Update: 2018-12-04
題目連結:http://acm.hdu.edu.cn/showproblem.php?pid=4681很多人都說這題比較簡單,但是如果想不到方法還是不好做的,想到後基本上就等著AC了首先要會最長公用子系列的含義,這裡假設所有字元數組下標都是從1開始第一步求串a和串b的正向最長公用子系列
Time of Update: 2018-12-04
題目連結:http://poj.org/problem?id=1159這個題目算是一個簡單基礎的DP了,但是我還是想了一會dp方程dp[i][j]的意思是,下標從i到j的字串,如果變成迴文串最少要加多少個字元首先當i==j的時候肯定是0,因為一個字元肯定就是迴文,當i+1=j的時候,如果str[i]==str[j]那麼dp[i][j]=0否則dp[i][j]=1這兩個步驟完成之後開始如下dp,最後返回dp[0][n-1]就行了! if(str[j]==str[j+i])
Time of Update: 2018-12-04
“VS2005->Target->Remote Tools”開啟的遠程工具,選用ActiveSync作為串連方式時,會出現如下錯誤:“The Microsoft ActiveSync reported the following error: Unable to load device side components”Solution:The log indicated device side binaries are missing under
Time of Update: 2018-12-04
現在很多的虛擬機器主機都禁用了 ASP 的標準組件:FileSystemObject,因為這個組件為 ASP 提供了強大的檔案系統訪問能力,可以對伺服器硬碟上的任何檔案進行讀、寫、複製、刪除、改名等操作(當然,這是指在使用預設設定的 Windows NT / 2000 下才能做到)。但是禁止此組件後,引起的後果就是所有利用這個組件的 ASP 將無法運行,無法滿足客戶的需求。 如何既允許 FileSystemObject
Time of Update: 2018-12-04
The analysis: This problem is so easy, but it is so difficult to AC that you should be more cautious.I have got many WAs.Because I made many mistakes.Although this problem waste much time, I got some lectures,which are as follows:
Time of Update: 2018-12-04
最近自己製作了幾個iphone4使用的離線地圖,總結一下經驗: 1. 原始地圖下載使用Global Map Download Tool 下載,網上教程很多。 2. 轉為iPhone格式使用GMDL的‘->iPhone' 功能,選擇firmware2.2 & 3,產生MapTiles.sqlitedb。 3.
Time of Update: 2018-12-04
KETTLE思路是,把一個有特定格式的的文字檔,寫入ORACLE資料庫表, 具體方法見如下操作: 首先來看下文字檔的內容:1|test12|test23|test3通過|進行分割的。 具體操作方法: 開啟KETTLE,建立立一個轉換,拖出來如下控制項: 下面我們來看每個空間具體的配置: 1文字檔輸入這裡我們需要配置的有以下幾個地方,具體見: 選擇需要輸入的檔案。 這裡選擇檔案類型,就用預設的CSV就可以了,分隔字元
Time of Update: 2018-12-04
先說一下環境:windows Mobile下應用程式開發,開發環境vs2008,sdk 是windows Mobile 6 professional sdk。在單步調試的時候給出這樣一個錯誤,如題。下面給出網上查的一些方法:(一)微軟官方文檔: Connectivity Troubleshooting (Devices) http://msdn.microsoft.com/en-us/library/ms228835(VS.80).aspx 這篇文檔對Windows
Time of Update: 2018-12-04
離散製造的產品往往由多個零件經過一系列並不連續的工序的加工最終裝配而成,其在匯入ERP系統時應注意幾個方面的問題。ERP發展起源於離散型製造業 製造業按其產品製造工藝過程特點被概括分為連續製造和離散製造。相對於連續製造,離散製造的產品往往由多個零件經過一系列並不連續的工序的加工最終裝配而成。加工和銷售此類產品的企業可以稱為離散製造型企業。例如屬於生產資料生產的機械、電子裝置製造業,屬於生活資料生產的機電整合消費產品製造業。