2011年8月30日 星期二
2011年8月29日 星期一
2011年8月25日 星期四
2011年8月24日 星期三
2011年8月23日 星期二
[.NET] 清除快取 Cache.Remove
再一個一個去做Cache.Remove()
裡面是C#寫的範例。
2011年8月22日 星期一
[C#] TextBox 限制輸入
TextBox 常常會需要有限制輸入的時候,以下範例是由C#限制 TextBox 只能輸入字母的部份。
*註 : 別忘記還有正則運算式可以用喔
[.NET] Base64 編碼與解碼
Base64 編碼的使用在網頁設計與資料庫處理中是一項很基本卻很實用的技術,在不考慮安全性的情況下,也可以當做是最基礎的「文字編碼」處理。
Base64是一種使用64基的位置計數法。它使用2的最大次方來代表僅可列印的ASCII 字元。這使它可用來作為電子郵件的傳輸編碼。在Base64中的變數使用字元A-Z、a-z和0-9 ,這樣共有62個字元,用來作為開始的64個數字,最後兩個用來作為數字的符號在不同的系統中而不同。
以下是以C#寫的範例程式。
2011年8月18日 星期四
[.NET] System.Globalization 一個很有趣的命名空間
TaiwanCalendar
TaiwanLunisolarCalendar
2011年8月15日 星期一
[.NET] C# 常用function整理(六) 民國年轉西元年
#region RepublicToAD()
/// <summary>
/// 民國年轉西元年
/// </summary>
/// <param name="RepublicDate"></param>
/// <returns></returns>
public static string RepublicToAD(this string RepublicDate)
{
try
{
if (RepublicDate != null && RepublicDate.Length > 0)
{
string[] temps = RepublicDate.Split('/');
if (temps.Length == 3)
{
RepublicDate = string.Format("{0}/{1}/{2}",
Convert.ToInt32(temps[0]) + 1911,
temps[1],
temps[2]);
}
}
}
catch { }
return RepublicDate;
}
#endregion
2011年8月14日 星期日
[d069] 文文的求婚--續集 (n 行版)
[d067] 文文的求婚--續集 (1 行版)
[d070] 文文的求婚--續集 (0 尾版)
2011年8月13日 星期六
[d071] 文文的求婚--續集 (EOF 版)
[d072] 文文的求婚--續集 (Case 版)
[a004] 文文的求婚
2011年8月12日 星期五
[d068] 該減肥了!
[d066] 上學去吧!
17 00
Off School
/**********************************************************************************/
/* Problem: d066 "上學去吧!" from 板橋高中 */
/* Language: C */
/* Result: AC (2ms, 249KB) on ZeroJudge */
/* Author: diiuuli520 at 2009-04-03 23:57:19 */
/**********************************************************************************/
#include
#include
int main(void)
{
int a,b;
while(scanf("%d%d",&a,&b)!=EOF)
if(a>=17||(a==7 && b<30)||a<7 )
printf("Off School");
else
printf("At School");
return(0);
}
[d065] 三人行必有我師
2011年8月11日 星期四
[d074] 電腦教室
[d073] 分組報告
7
3
/**********************************************************************************/
/* Problem: d073 "分組報告" from 板橋高中 */
/* Language: C */
/* Result: AC (4ms, 262KB) on ZeroJudge */
/* Author: diiuuli520 at 2009-04-04 00:22:02 */
/**********************************************************************************/
#include
#include
int main(void)
{
int a;
while(scanf("%d",&a)!=EOF)
if(a%3==0)
printf("%d",a/3);
else
printf("%d",a/3+1);
return(0);
}
[b119] 售票系統 (Sales)
但是全面提高票價可能會造成客源的流失,因此企畫部門提出了以下的動態調整機位售價的模式:
給定某航段的票面價及機位數,前20%賣出的機位售價為票面價之70%,前21%~40%賣出的機位售價為票面價之80%,前41%~60%賣出的機位售價為票面價之 90%,最後售出的機位則全部為票面價。
請寫一個程式來幫助「低利航空公司」計算每天每班飛航班機的利潤或虧損。
計算過程皆四捨五入至整數。
2011年8月10日 星期三
[C#] SQL 連接字串
SQL2005, SQL2008, MySQL ,Excel, Access ,Excel 2007, Access 2007.....
所有DB的connection string Example
2011年8月9日 星期二
2011年8月8日 星期一
2011年8月7日 星期日
[Javascript] 刷新頁面的幾種方法
location.reload()
location=location
location.assign(location)
document.execCommand('Refresh')
window.navigate(location)
location.replace(location)
document.URL=location.href
[SQL] 預存程序 (Stored Procedures)
撰寫 Stored Procedures
利用 ADO 來存取資料庫是一件既輕鬆又簡單的工作, 不過有的時候又臭又長的 SQL 敘述實在很煩人,
[SQL] SQL語法教學
1. DDL ( Data Definition Language ):定義資料庫物件使用的語法,常看到的關鍵字有:
Create:建立資料庫的物件。
Alter:變更資料庫的物件。
Drop:刪除資料庫的物件。
2. DCL ( Data Control Language ):控制資料庫物件使用狀況的語法,常看到的關鍵字有:
Grant:賦予使用者使用物件的權限。
Revoke:取消使用者使用物件的權限。
Commit:Transaction 正常作業完成。
Rollback:Transaction 作業異常,異動的資料回復到 Transaction 開始的狀態。
3. DML ( Data Manipulation Language ):維護資料庫資料內容的語法,常看到的關鍵字有:
Insert:新增資料到 Table 中。
Update:更改 Table 中的資料。
Delete:刪除 Table 中的資料。
Select:選取資料庫中的資料。
[正則運算式] 範例
內容部分是以前用過的,部分是網路上的範例。
[轉載] 正則運算式 基礎知識
內有表格整理和範例參考
2011年8月5日 星期五
2011年8月4日 星期四
[ACM 10346] Peter's Smokes
Peter有 n 支紙煙,他一支一支的抽並且把煙屁股留起來。當他有 k 支煙屁股(k>1)時他可以把它們捲成一支新的紙煙。
請問Peter共可以抽幾支紙煙?
[ACM 591] Box of Bricks
3歲的小明喜歡玩他的方塊積木,他總是把方塊疊在一起形成高度不一的方塊堆。然後他說:這是一面牆。5歲的姊姊小美聽到了就跟小明說:真正的牆高度應該要一樣才行。小明聽了覺得有道理於是決定要搬動一些方塊使所有方塊堆的高度一樣。如下圖。由於小明是個懶惰的小孩,他想要搬動最小數目的方塊以達成這個目的,你能幫助他嗎?
[ACM 392] Polynomial Showdown
以下是詳細格式的規則:
- 項次必須按降冪出現。
- 指數部分出現在^符號之後。
- 常數項只要出現常數部分就好了,不需有x^0。
- 只有係數非0的項次才需出現。如果所有的係數都是0,那只要輸出常數項就可以了。
- 介於項次之間的+號和-號兩邊各有一空白字元。
- 假如第一項的係數是正的,那麼該係數不需要符號。如果第一項的係數是負的,那該係數必須有-這個符號。例如:-7x^2 + 30x + 66
- 若係數為負,則以減一個正數來表示(除了上面第6條所提到的第一項之外),而非以加一個負數來表示。例如:x^2 + -3x 這樣的表示法是錯誤的,應該是:x^2 - 3x才對。
- 1或-1,除了常數項之外都不應該出現。例如:-1x^3 + 1x^2 + 3x^1 - 1 這樣的表示法是錯誤的,應該是:-x^3 + x^2 + 3x - 1 才對。
[ACM 10161] Ant on a Chessboard
2011年8月3日 星期三
[ACM 100] The 3n + 1 problem
1. 輸入 n
2. 印出 n
3. 如果 n = 1 結束
4. 如果 n 是奇數 那麼 n=3*n+1
5. 否則 n=n/2
6. GOTO 2
例如輸入 22, 得到的數列: 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1
據推測此演算法對任何整數而言會終止 (當列印出 1 的時候)。雖然此演算法很簡單,但以上的推測是否真實卻無法知道。然而對所有的n ( 0 < n < 1,000,000 )來說,以上的推測已經被驗證是正確的。
給一個輸入 n ,透過以上的演算法我們可以得到一個數列(1作為結尾)。此數列的長度稱為n的cycle-length。上面提到的例子, 22 的 cycle length為 16.
問題來了:對任2個整數i,j我們想要知道介於i,j(包含i,j)之間的數所產生的數列中最大的 cycle length 是多少。
[SQL] 資料表值函式 CLR
一樣從SQL Server 2005 開始都可以使用。
Ps.對於資料表値函式而言,傳回資料表類型的資料行不得包含時間戳記資料行或非 Unicode 字串資料類型資料行 (例如,char、varchar 和 text)。 不支援 NOT NULL 條件約束。
[ACM 406] Prime Cuts
你的任務是,給你N及C,請你找出1到N中所有的質數,並把他們排成一列(假設共有K個)。如果K是偶數,請輸出中間那C*2個質數。如果K是奇數,則輸出中間那(C*2)-1個質數。
[ACM 10035] Primary Arithmetic
2011年8月2日 星期二
[ACM 488] Triangle Wave
的那一個數。例如:在{1,3,4,9,11}中4就是中間數。萬一有偶數個數字,我們定 義中間數就是位於中間的那2個數的和除以2(而且
只取整數部分)。例如:在{1,2,3,6,7,8}中{3,6}是位於中間的2個數,所以中間數就是 (3+6)/2=4。
[ACM 10107] What is the Median?
的那一個數。例如:在{1,3,4,9,11}中4就是中間數。萬一有偶數個數字,我們定 義中間數就是位於中間的那2個數的和除以2(而且
只取整數部分)。例如:在{1,2,3,6,7,8}中{3,6}是位於中間的2個數,所以中間數就是 (3+6)/2=4。
[96北市資訊學科能力競賽] 會議中心(Room)
拼拼樂會議中心是一個N×N 的超大型可分割式會議中心。每一個1×1 的空間都可以用隔板隔開,因此該會議中心最多可以有n2 個獨立的1×1 會議室,如要較大的會議室,則需將隔板拿掉使得二或更多個相鄰的1×1 空間可以合併使用。圖一的會議中心最多可分隔成169 個1×1 小會議室,最少則全部合併成為一個13×13 的會議室每間1×1 會議室皆以其二維平面座標為編號。選定一個1×1 會議室並給予編號 (0),相鄰的上、下、左、右會議室編號則依序為 (0, 1), (0, -1), (-1, 0), (0, 1)。
會議中心外租會議室時,必須按照下列規則,組成合乎需求的會議室。一開始先以編號為(0, 0) 的空間供租用,如果空間不足,則依序向右方、上方、左方、下方的空間合併成為較大的會議室。每次擴充時,新加入的空間必須為正方形且該邊長必須與相鄰的擴充前會議室邊長相同,如此才能確保合併後的會議室一定是四方形。以下圖為例,第一次擴充租用空間時,右邊編號為 (1, 0) 的會議室空間會被跟編號為 (0) 的會議室合併。第二次擴充時,在 (0, 0), (1, 0) 上方的四個(2×2 正方形)小會議室會被合併進來。第三次擴充時,在 (0,0) ~ (0, 3) 左邊的 9 個 (3×3 正方形)小會議室會被合併進來。第四次擴充時,在 (-3,0) ~ (1,0) 下方的 25 個 (5×5 正方形)小會議室會被合併進來。第五次擴充時,在 (0,-5) ~ (0,2) 右方的 64 個 (8×8 正方形)小會議室會被合併進來。後續的擴充則依此類推。
現在,若給定一個n 的值,請計算第n 次擴充時的正方形會議室的邊長。
[ACM 10300] 環保獎金
德國的農夫根據他們農場的條件被發給獎金。想像以下簡單的規則:你知道農場的大小也知道有多少動物住在裡面。在這裡我們並不去分別不同的動物有什麼 不同之處(雖然這跟現實有些不合)。除此之外,你還知道農夫使用環保設備及習慣的等級(稱之環保等級),這等級以大於0的整數來表示。
農夫得到的獎金是根據以下的計算:首先算出每隻動物平均居住的空間,然後乘以該農夫的環保等級,這樣你就得到每隻動物可以領多少獎金。最後再把這個值乘以所有動物的數目,就可以算出該農夫可得到獎金的數目了。
[ACM 10696] f91
McCarthy是一個有名的資訊專家。他定義了一個遞迴的函數叫做 f91 。它輸入一個正整數N並且依據以下的規則傳回一個正整數:
. 如果 N <= 100, 那麼 f91(N) = f91( f91( N+11) )
. 如果 N >= 101, 那麼 f91(N) = N-10
請你寫一個程式來計算 f91
[2008 TOI 研習營初選] 二元一次聯立方程式
答搞丟了,又忘記怎麼解二元一次聯立方程式。老師只好向你求救,
請你寫出解二元一次聯立方程式的題目。二元一次聯立方程式的型式
如下:
y = a1x + b1
y = a2x + b2
x和y是變數。a1,a2,b1和b2是常數。你的程式的輸入是a1,a2,
b1和b2,輸出是x和y的值(假設所有的方程式恰有一個解)。