青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

C++ Jounior

once setback,once inspiration,once self-awareness
重要的是這個磨練過程,而不是結果,要的是你粗壯的腿,而不是你身上背的那袋鹽巴

 

Good C++ website

熊春雷的專欄
http://www.autodev.net/

http://blog.csdn.net/pandaxcl
杜中偉
http://m.shnenglu.com/duzhongwei/
http://blog.csdn.net/win32asn
http://www.stlchina.org/
G9
http://blog.csdn.net/pongba/archive/2007/12/11/1930150.aspx

posted @ 2008-04-02 10:17 snowball 閱讀(316) | 評論 (0)編輯 收藏

求得含有最多連續特定字符個數的字符串

int ?GetMaxCountofContinuousLetter( char ? * ?p, char ?searchChar)
{
????
int ?maxCount? = 0 ;
????
int ?currentCount? = ? 0 ;
????
while ( 1 )
????
{
????????
if ( * p? == ?searchChar)
????????
{
????????????currentCount?
= ? 0 ;
????????????
while ( * p? && ? * p? == ?searchChar)
????????????
{
????????????????currentCount?
++ ;
????????????????p
++ ;
????????????}

????????????
if (maxCount? < ?currentCount)
????????????????maxCount?
= ?currentCount;
????????}

????????
if ( * p? == ? ' \0 ' )?
????????????
break ;
????????
else
????????????p
++ ;
????}

????
return ?maxCount;
}

int ?main()?????
{??
????
char ? * p[ 3 ] =
????
{
????????
" String(1)8818882348888856788888888988888888880 " ,
????????
" String(2)881888234888885678888888898888888880 " ,
????????
" String(3)8818882348888856788888888988888888888888880 "
????}
;
????
int ?location? = ? 0 ;
????
char ?searchChar? = ? ' 8 ' ;
????
int ?tempCount? = ? 0 ;
????
int ?maxCount? = ? 0 ;
????
for ( int ?i? = ? 0 ;i < sizeof (p) / sizeof ( * p);i ++ )
????
{
????????tempCount?
= ?GetMaxCountofContinuousLetter(p[i],searchChar);
????????
if (?tempCount? > ?maxCount)
????????
{
????????????maxCount?
= ?tempCount;
????????????location?
= ?i;
????????}

????}

????cout
<< " the?string?of?maxCount?is?:? " << p[location] << endl;
????cout
<< " the?count?of??the?continuous?letters?is?:? " << maxCount << endl;
????cin.
get ();
}

posted @ 2008-04-02 09:30 snowball 閱讀(326) | 評論 (0)編輯 收藏

排序

     摘要: 排序算法  閱讀全文

posted @ 2008-04-02 09:26 snowball 閱讀(244) | 評論 (0)編輯 收藏

從str中刪除remove中含有的字符

/* **************************************** */
/* ?從str中刪除remove中含有的字符?????????? */
/* **************************************** */
void ?RemoveChar( char ?str[],? char ?remove[])
{
????
int ?dst,src;
????
char ?removeArray[ 256 ];
????puts(str);
????puts(remove);
????
for (src = 0 ;src < 256 ;src ++ )
????
{
???????removeArray[src]
= 0 ;
????}

????src
= 0 ;
????
while (remove[src])
????
{
???????removeArray[remove[src
++ ]] = 1 ;
????}

????src
= 0 ;dst = 0 ;
????
while (str[src])
????
{
????????
if ( ! removeArray[str[src]])
????????
{
????????????str[dst
++ ] = str[src];
????????}

????????src
++ ;
????}

????str[dst]
= 0 ;
????puts(str);
}

posted @ 2008-04-02 09:25 snowball 閱讀(972) | 評論 (0)編輯 收藏

Write a routine that prints out a 2-D array in spiral order

???? jeccy (燕飛月天) 于 2006年10月28日21:37:09 星期六 提到:

我的理解,給定2維數組
1 2 3三角形判斷
8 9 4
7 6 5
“螺旋式”順序輸出:1 2 3 4 5 6 7 8 9
【 在 bluexyz (數據結構是根本) 的大作中提到: 】

? private ? static ? void ?PrintNumberasSpiralOrder()
????????
{
????????????
// 1??2??3???4
????????????
// 12?13?14??5
????????????
// 11?16?15??6
????????????
// 10?9???8??7
????????????
????????????
// 1,??2?,?3,??4,??5
????????????
// 16,?17,?18,?19,?6
????????????
// 15,?24,?25,?20,?7
????????????
// 14,?23,?22,?21,?8
????????????
// 13,?12,?11,?10,?9
???????????? int [,]?a? = ? new ? int [,]
????????????
{? {? 1 ,? 2 ,? 3 ,? 4 ,? 5 ?} ,?
????????????
{? 16 ,? 17 ,? 18 ,? 19 ,? 6 ?} ,?
????????????
{? 15 ,? 24 ,? 25 ,? 20 ,? 7 ?} ,
????????????
{? 14 ,? 23 ,? 22 ,? 21 ,? 8 ?} ,
????????????
{? 13 ,? 12 ,? 11 ,? 10 ,? 9 ?} ?}
;
????????????
// int[,]?a?=?new?int[,]?{?{?1,?2,?3,?4?},?{?12,?13,?14,?5?},?{?11,?16,?15,?6?},?{?10,?9,?8,?7?}?};
????????????
// int[,]?a?=?new?int[,]?{?{?1,?2?},?{4,3}?};
???????????? const ? int ?N? = ? 5 ;
????????????
// ?spiral
???????????? for ?( int ?i? = ?N? - ? 1 ,?j? = ? 0 ;?i? > ? 0 ;?i -- ,?j ++ )
????????????
{
????????????????
// i?從最大維度數開始
????????????????
// j?從最小維度數開始
????????????????
// i--來縮小范圍
????????????????
// j++來縮小范圍
????????????????
// k?增長縮小因子
???????????????? for ?( int ?k? = ?j;?k? < ?i;?k ++ )
????????????????????System.Console.Write(
" {0}? " ,?a[j,?k]);?Console.WriteLine( "" );
????????????????
for ?( int ?k? = ?j;?k? < ?i;?k ++ )
????????????????????System.Console.Write(
" {0}? " ,?a[k,?i]);?Console.WriteLine( "" );
????????????????
for ?( int ?k? = ?i;?k? > ?j;?k -- )
????????????????????System.Console.Write(
" {0}? " ,?a[i,?k]);?Console.WriteLine( "" );
????????????????
for ?( int ?k? = ?i;?k? > ?j;?k -- )
????????????????????System.Console.Write(
" {0}? " ,?a[k,?j]);?Console.WriteLine( "" );
????????????}

????????????
// ?special?case?for?middle?element?if?N?is?odd
????????????
// 如果是奇數,則要條印中間的數。
???????????? if ?(N? % ? 2 ? == ? 1 )?System.Console.Write(a[(N? - ? 1 )? / ? 2 ,?(N? - ? 1 )? / ? 2 ]);
????????}

Reference : http://bigtiger2005.spaces.live.com/blog/cns!4e967c6fe38e7c14!141.entry?wa=wsignin1.0

posted @ 2008-04-02 09:23 snowball 閱讀(285) | 評論 (0)編輯 收藏

100扇門,100個人,第i個人經過門號可以整除i的門。經過時,如果門開就關,如果門關就開。問最后所有門的狀態是什么。

#include??? < stdio.h > ?

#define ???N???100?
#define ???OPEN???1?
#define ???CLOSED???0?

void ???switch_door( int ??? * door)?
{?
????????
if ( * door??? == ???OPEN)?
????????????????
* door??? = ???CLOSED;?
????????
else ?
????????????????
* door??? = ???OPEN;?
}
?

int ???main( void )?
{?
????????
int ???door[N??? + ??? 1 ];??? // ???waste???a???door?
???????? int ???person;?
????????
int ???i;?

????????
for (i??? = ??? 1 ;???i??? <= ???N;???i ++ )?
????????????????door[i]???
= ???OPEN;??? // ???all???doors???are???open???at???first?

????????
for (i??? = ??? 1 ;???i??? <= ???N;???i ++ )?
????????????????
for (person??? = ??? 1 ;???person??? <= ???N;???person ++ )??? // ???person???pass???through???the???door?
???????????????????????? if (i??? % ???person??? == ??? 0 )?
????????????????????????????????switch_door(
& door[i]);?

????????
for (i??? = ??? 1 ;???i??? <= ???N;???i ++ )?
????????????????printf(?
" door???%d:???%s\n? " ,???i,???door[i]??? ? ??? " Open? " ???:??? " Closed? " );?

????????
return ??? 0 ;?
}
?

給一個此題的思想:
要看門的狀態,主要是看這扇門開關次數,開關奇數次會使門的狀態改變,而偶數次就不會。而只要能夠知道當前門的編號能夠整除的自然數,就可以知道門的狀態是否改變了。從而知道門當最終的狀態。

下面我們將所有的數分為兩組,平方數(1,4,9……)和非平方數(為什么要這么分?下面就知道了)。
現在討論非平方數的情況。我們假設門號為N,同時假設從1開始到int(N^(1/2))(也就是N的開方數舍小數取整),總共有M個數能整除N,則從int(N^(1/2))+1到N,總共則對應也有M個數能夠將N整除。(這句話仔細想一下)。
在此,就有2*M個數能將N整除,它是一個偶數。因此門開關了偶數次,門的狀態最后不會被改變。

現在討論平方數,因為N^(1/2)這個數是一個整數,因此我們將從1到N的所有的數用N^(1/2)這個數分成兩部分(不包括N^(1/2)),同樣假設前半部分有M個數可以將N整除,則后半部分也有M個數可以將N整除,這樣就有2*M個數可以整除N了,再加上N^(1/2)這個數。總共就有2*M+1個數可以整除N,也就是編號為N的門會開關2*M+1次,門的狀態就會被改變了。

綜上,如果門號數是平方數的,門的狀態就會發生改變,而不是平方數的就不會改變狀態了。因此,只要檢查門是否為完全平方數就可以判斷門的狀態為開還是為關了。

帖上代碼:?
#include???
< iostream > ?
#include???
< cmath > ?
using ??? namespace ???std;?

int ???main()?
{?
????????
int ???k;?
????????
for ( int ???i??? = ??? 1 ;???i??? <= 100 ;???i ++ )?
????????
{?
????????cout???
< ? < ??? " Door??? " ??? < ? < ???i???;?
????????k???
= ??? int (sqrt(i));?
????????
if (k * k??? == ???i)?
????????cout???
< ? < ??? " :???Closed? " ;?
????????
else ?
????????cout???
< ? < ??? " :???Open? " ;?
????????cout???
< ? < ???endl;?
????????}
?
return ??? 0 ;?
}
?
當然,這是利用了人數與門數是相等的情況。如果個數不同的話,還是按照一樓的來。

Reference : http://topic.csdn.net/u/20070620/14/3d5e96d5-169a-4bc6-887c-ca8639cd8c63.html

posted @ 2008-04-02 09:20 snowball 閱讀(731) | 評論 (0)編輯 收藏

統計1的個數

統計1的個數

int ?func(x)
{
????
int ?countx? = ? 0 ;
????
while (x)
????
{
????????countx
++ ;
????????x?
= ?x & (x - 1 );
????}

????
return ?countx;
}
?

假定x?
= ? 9999
10011100001111
答案:?
8


將x轉化為2進制,看含有的1的個數

x
= x & (x - 1 )?這種算法是把一個二進制數最右邊的一個1變成0

然后呢?

x
- 1與x區別在于最后二進制的1

每執行一次x?
= ?x & (x - 1 ),會將x用二進制表示時最右邊的一個1變為0,因為x - 1將會將該位(x用二進制表示時最右邊的一個1)變為0。

如果是二進制100,
- 1 ,則為011

如果是二進制101,
- 1則為100

與原數一與,就1后面的數,包括1全都與掉

明白,謝謝了?

不客氣


思路: 將x轉化為2進制,看含有的1的個數。
注: 每執行一次x = x&(x-1),會將x用二進制表示時最右邊的一個1變為0,因為x-1將會將該位(x用二進制表示時最右邊的一個1)變為0。(1) 如果一個數是2的n次方,那么這個數用二進制表示時其最高位為1,其余位為0。
判斷一個數(x)是否是2的n次方

#include? < stdio.h >

int ?func(x)
{
????
if (?(x & (x - 1 ))? == ? 0 ?)
????????
return ? 1 ;
????
else
????????
return ? 0 ;
}


int ?main()
{
????
int ?x? = ? 8 ;
????printf(
" %d\n " ,?func(x));
?}

posted @ 2008-04-02 09:17 snowball 閱讀(1157) | 評論 (0)編輯 收藏

全排列的生成算法

     摘要: 全排列的生成算法就是對于給定的字符集,用有效的方法將所有可能的全排列無重復無遺漏地枚舉出來。任何n個字符集的排列都可以與1~n的n個數字的排列一一對應,因此在此就以n個數字的排列為例說明排列的生成法。n個字符的全體排列之間存在一個確定的線性順序關系。所有的排列中除最后一個排列外,都有一個后繼;除第一個排列外,都有一個前驅。每個排列的后繼都可以從 它 的前驅經過最少的變化而得到,全排列的生成算法就是...  閱讀全文

posted @ 2008-04-02 09:06 snowball 閱讀(1477) | 評論 (1)編輯 收藏

進制轉換程序

? void ?test10_2( void )
??
{
???
static ? char ? const * ?szHexDigits? = ? " 01 " ;
???unsigned?
char ?b? = ? 16 ;
???cout?
<< ?szHexDigits[(b? >> ? 7 )? & ? 0x01 ]? << ?szHexDigits[(b? >> ? 6 )? & ? 0x01 ]? << ? ' ? ' ;
???cout?
<< ?szHexDigits[(b? >> ? 5 )? & ? 0x01 ]? << ?szHexDigits[(b? >> ? 4 )? & ? 0x01 ]? << ? ' ? ' ;
???cout?
<< ?szHexDigits[(b? >> ? 3 )? & ? 0x01 ]? << ?szHexDigits[(b? >> ? 2 )? & ? 0x01 ]? << ? ' ? ' ;
???cout?
<< ?szHexDigits[(b? >> ? 1 )? & ? 0x01 ]? << ?szHexDigits[(b? >> ? 0 )? & ? 0x01 ]? << ? ' ? ' ;
?}
? void ?test10_16( void )
??
{
????
static ? char ? const * ?szHexDigits? = ? " 0123456789abcdef " ;???
???unsigned?
char ?b? = ? 16 ;
???cout?
<< ?szHexDigits[(b? >> ? 4 )? & ? 0x0f ]? << ?szHexDigits[b? & ? 0x0f ]? << ? ' ? ' ;
?}

posted @ 2008-04-02 09:02 snowball 閱讀(353) | 評論 (0)編輯 收藏

僅列出標題
共2頁: 1 2 

導航

留言簿(1)

隨筆分類

友情鏈接

搜索

最新隨筆

最新評論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美日韩不卡视频| 女主播福利一区| 亚洲精选91| 欧美激情影音先锋| 一区二区动漫| 开元免费观看欧美电视剧网站| 亚洲人成在线免费观看| 欧美深夜影院| 久久综合色播五月| 亚洲日本成人女熟在线观看| 99国产精品国产精品毛片| 国产日本欧洲亚洲| 欧美综合77777色婷婷| 亚洲一区二区在线免费观看视频 | 亚洲成人直播| 欧美婷婷在线| 久久免费视频在线| 亚洲欧美一区二区激情| 亚洲精品视频在线| 亚洲狼人综合| 激情久久五月| 国产日韩一区欧美| 欧美三级电影一区| 亚洲欧美色婷婷| 亚洲另类在线一区| 亚洲欧美一区二区三区久久| 亚洲精品视频免费| 国户精品久久久久久久久久久不卡 | 久久精品综合网| 中文精品视频| 欧美午夜不卡视频| 亚洲国产欧美久久| 亚洲国产精品久久久久| 欧美成人69av| 欧美高清日韩| 亚洲国产裸拍裸体视频在线观看乱了中文 | 久久夜色精品国产亚洲aⅴ| 欧美影院在线播放| 狠狠狠色丁香婷婷综合激情| 国产一区二区三区免费观看| 欧美四级在线| 欧美性大战xxxxx久久久| 欧美精品导航| 欧美日韩亚洲一区二区三区在线观看 | 亚洲黄色成人| 日韩图片一区| 一区二区三区欧美视频| 日韩午夜三级在线| 亚洲精品久久久久久久久久久 | 亚洲一区二区不卡免费| 亚洲靠逼com| 亚洲欧美日韩精品久久亚洲区| 亚洲影视在线播放| 欧美一区=区| 美日韩精品免费| 欧美日本高清一区| 国产精品一区二区久久精品| 激情久久一区| 一区二区电影免费在线观看| 亚洲欧洲视频| 亚洲欧美视频在线| 久久这里只有精品视频首页| 欧美成va人片在线观看| 蜜臀av性久久久久蜜臀aⅴ四虎 | 国产乱码精品一区二区三| 国语精品一区| 一区二区三区日韩精品视频| 久久av资源网站| 亚洲国产mv| 亚洲欧美日本国产专区一区| 久久免费视频在线观看| 欧美日本免费一区二区三区| 国产欧美日韩免费看aⅴ视频| 亚洲大胆美女视频| 亚洲一区二区三| 欧美成人一区二区三区| 亚洲一区二区网站| 男女视频一区二区| 欧美成人影音| 国产精品成人一区二区三区夜夜夜| 国产精品高潮呻吟久久av无限 | 亚洲欧美电影在线观看| 欧美成人国产va精品日本一级| 在线视频欧美日韩精品| 久久亚洲视频| 国产亚洲精品美女| 亚洲图片欧美日产| 亚洲国产精品一区| 久久av免费一区| 国产精品免费aⅴ片在线观看| 亚洲大胆在线| 久久夜色撩人精品| 国产精品va在线播放| 在线观看91精品国产麻豆| 国产真实精品久久二三区| 国产在线视频欧美| 亚洲国产精品嫩草影院| 久久裸体艺术| 亚洲日本激情| 亚洲欧美日韩精品久久久| 免费成人美女女| 在线观看不卡| 久久综合九色综合网站| 中文精品99久久国产香蕉| 美女被久久久| 亚洲第一黄色| 久久久久高清| 亚洲欧美日本精品| 国产精一区二区三区| av不卡在线看| 欧美顶级大胆免费视频| 美女脱光内衣内裤视频久久网站| 国产一区二区日韩精品欧美精品| 亚洲影院污污.| 亚洲手机在线| 国产精品欧美激情| 久久精品视频在线免费观看| 欧美亚洲日本网站| 国产欧美一区二区精品性| 伊人久久久大香线蕉综合直播| 久久人人爽人人爽| 久久亚洲色图| 亚洲第一综合天堂另类专| 牛牛国产精品| 久久性色av| 亚洲九九爱视频| 亚洲国产精品高清久久久| 亚洲你懂的在线视频| 亚洲精品社区| 欧美制服丝袜第一页| 国产日韩亚洲欧美综合| 久久久久国色av免费观看性色| 午夜精品一区二区三区电影天堂 | 99视频精品| av成人免费观看| 国产一区二区三区黄视频| 美女精品在线| 欧美日韩国产综合网| 欧美在线播放高清精品| 日韩视频在线免费观看| 国产精品综合色区在线观看| 欧美国产一区二区在线观看| 欧美精品在线免费| 久久久久国产精品午夜一区| 欧美激情久久久久| 羞羞答答国产精品www一本| 日韩午夜av| 国产精品亚洲一区| 99re这里只有精品6| 一本色道久久加勒比88综合| 国产一区二区三区免费在线观看| 免费成人黄色| 欧美三日本三级少妇三99| 西西人体一区二区| 久久精品在线免费观看| 亚洲网站视频| 欧美成人免费在线视频| 午夜精品久久久久久久99黑人| 久久久水蜜桃| 亚洲欧美视频一区二区三区| 免费观看成人| 久久国产精品毛片| 欧美久久久久久久| 噜噜噜噜噜久久久久久91| 国产精品呻吟| 亚洲伦理自拍| 亚洲美女视频网| 久久色中文字幕| 久久黄色网页| 国产精品永久免费在线| 99精品国产福利在线观看免费| 欧美精品在线看| 久久久噜噜噜久久久| 一本久道久久综合狠狠爱| 国产精品99久久99久久久二8| 久久精品国亚洲| 欧美视频在线观看视频极品| 蜜桃久久av一区| 国产精品久久久久国产精品日日 | 亚洲日本aⅴ片在线观看香蕉| 亚洲一本大道在线| 9色porny自拍视频一区二区| 欧美日韩国产影片| 欧美亚洲视频在线观看| 欧美电影在线观看完整版| 在线亚洲欧美| 黄色欧美日韩| 国产精品高清网站| 麻豆精品在线播放| 亚洲欧美精品在线| 亚洲国产成人在线播放| 欧美一区二视频在线免费观看| 亚洲国产精品尤物yw在线观看| 国产精品黄色| 欧美福利一区二区| 久久国产精品久久久| 亚洲视频www| 亚洲精品影院| 蜜臀久久久99精品久久久久久| 亚洲欧美日韩在线一区|