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

隨筆-19  評論-1  文章-0  trackbacks-0
 
我編寫的第一個JAVA程序,在Eclipse上成功運行!發博文表示慶賀,向Java處理大整數進發……
public class main{
    
public static void main(String[] args) {
        System.out.println(
"Hello");
    }
}
雖然Java里面有很多知識,目前對于我來說都是未知,但只要一步步努力,一點點進步,菜鳥起飛啦!
附上一篇文章:JAVA大數處理(BigInteger,BigDecimal)
今日見了一個名詞SDK(Software Development Kit, 即軟件開發工具包 )
posted @ 2010-10-07 21:08 孟起 閱讀(235) | 評論 (0)編輯 收藏
把在n條線段中(以(0,0)為起點)放入m個點,使其等分為m+1份。
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3414
#include<stdio.h>
#include
<math.h>
struct point{
    
double x,y,len;
}
p[1002];
int main()
{
    
int n,m,i,j,ca=1;
    
double ave,len,ax,ay;
    
while(scanf("%d%d",&n,&m)!=EOF)
    
{
        p[
0].x=0; p[0].y=0; ave=0;
        
for(i=1;i<=n;i++){
            scanf(
"%lf%lf",&p[i].x,&p[i].y);
            p[i].len
=sqrt((p[i].x-p[i-1].x)*(p[i].x-p[i-1].x)+(p[i].y-p[i-1].y)*(p[i].y-p[i-1].y));
            
//printf("%.3f %.3f %.3f\n",p[i].x,p[i].y,p[i].len);
            ave+=p[i].len;
        }

        ave
/=(m+1); //每一份的均長
        j=0;  //沿著線段走
       
// printf("%.3f\n",ave);
        printf("Route %d\n",ca++);
        
for(i=1;i<=m;i++)
        
{
            len
=0;
            
for(; j<n;j++)
            
{
                
if(len+p[j+1].len>ave)
                    
break;
                len
+=p[j+1].len;
            }

            
double res=ave-len;
            
//printf("%d %.3f\n",j,res);
            ax=p[j].x+(res/p[j+1].len)*(p[j+1].x-p[j].x);
            ay
=p[j].y+(res/p[j+1].len)*(p[j+1].y-p[j].y);
            printf(
"CP%d: (%.3lf, %.3lf)\n",i,ax,ay);
            p[j].x
=ax; p[j].y=ay;
            p[j
+1].len=sqrt((p[j+1].x-p[j].x)*(p[j+1].x-p[j].x)+(p[j+1].y-p[j].y)*(p[j+1].y-p[j].y));
        }

    }

    
return 0;
}
posted @ 2010-10-07 18:25 孟起 閱讀(368) | 評論 (0)編輯 收藏
http://acm.hdu.edu.cn/showproblem.php?pid=1214
一個環形的圈怎樣用最少次數把它從順時針變成逆時針(只能相鄰位置交換位置)
一個環形,最優結果是把這個環分成 相差 最少的2部分,這2部分按照直線來求出結果再求和
直線如果把1234 換成4321
是冒泡的次數。。首先4123(3)+4312(2)+4321(1)=6
本題是把n看成兩個 n/2 ,然后求出進行反序(冒泡)的次數
#include <stdio.h>
int main()
{
    
int n,t,r;
    
while(scanf("%d",&n)!=EOF)
    {
        t
=n/2;  r=n-t;
        printf(
"%d\n",t*(t-1)/2+r*(r-1)/2);
    }
    
return 0;
}
posted @ 2010-10-07 10:10 孟起 閱讀(757) | 評論 (0)編輯 收藏

解決一個問題通常有多種方法, 我們總想找到最高效的,所以需要對比不同算法執行所用的時間。可惜的是,C++中提供的方法一般只能精確到毫秒級。

提供一種更加精確的方法。編寫一個函數,可以在C++中這樣寫:

__declspec (naked) unsigned __int64 GetCpuCycle( void )
{
    _asm
    {
        rdtsc
        ret
    }
}

RDTSC的返回值存放在EDX EAX中, EDX為高32位,EAX為低32位。這里的 RDTSC 指令( Read Time Stamp Counter ), 獲得CPU的高精度時間戳。

這樣以來我們就可以在隨處獲得當前的CPU自上電以來的時間周期數了:

unsigned __int64 iCpuCycle = GetCpuCycle();

根據這個數字我們可以計算出上電以來所經歷的時間( 秒s ):

second = iCpuCycle / CPU主頻率( HZ );

1GHZ = 1,000 MHZ = 1,000,000 KHZ = 1,000,000,000 HZ;

獲取兩次作差就可以得到運行的時間了。其實沒必要換算成時間,關注差值就行了。

 

PS:

可以放心一個unsigned __int64 不會溢出 - - 可以計算一下你的CPU能保存多少年的時間。。

根據這一方法有幾個好處: 一是精度高,二是函數調用開銷最小,三是平臺限制小,四是具有和CPU主頻相對應的直接關系。。。 但是由于精度高,得到的數字浮動比較大。。

posted @ 2010-10-06 21:39 孟起 閱讀(696) | 評論 (0)編輯 收藏
A triangle field is numbered with successive integers in the way shown on the picture below.



The traveller needs to go from the cell with number M to the cell with number N. The traveller is able to enter the cell through cell edges only, he can not travel from cell to cell through vertices. The number of edges the traveller passes makes the length of the traveller's route.

Write the program to determine the length of the shortest route connecting cells with numbers N and M.
#include <stdio.h>
#include
<math.h>
int main()
{
    
int temp,n,m,s,flag=3,cn,cm,zb,yb,cc,k,sj;
    
while(scanf("%d%d",&m,&n)==2 )
    
{   
        flag
=3;  s=0;  k=0;
        
if(m>n) 
        
{
            temp
=m;  m=n;  n=temp;
        }

        cn
=(int)ceil(sqrt(n));    //判斷n和m所在層數
        cm=(int)ceil(sqrt(m));
        cc
=abs(cn-cm);        //判斷兩點層差
        zb=m+(cn-1)*(cn-1)-(cm-1)*(cm-1);  //判斷m輻射到n層所及范圍的左邊界和右邊界
        yb=zb+2*cc;
         
        
if(n>=zb && n <=yb) //判斷n在m范圍所須步數
        {
            s
=2*(cc);
            k
=1;
        }

        
else
        
{    
            
if(n<zb)   //判斷n到m邊界及m點所須步數和
                s=2*(cc)+abs(n-zb); 
            
else
                s
=2*(cc)+abs(n-yb);
        }

        sj
=m-(cm-1)*(cm-1);   //判斷三角類型0正,1倒
        if(abs(n-m)% 2 !=(cc) % 2)
        
{
            
if(sj % 2 ==1 )
                flag
=1;
            
else
                flag
=0;
        }

        
if(flag==1 && k==1)
            s
=s-1;      //假如n點在m點輻射范圍內,正三角-1,倒三角+1,不在不判斷.
        if(flag==0 && k==1
            s
=s+1;
        printf(
"%d\n",s);
    }

    
return 0;
}
cn-1)*(cn-1)是1到n-1行末尾的數,也就是1-n的里面小三角形的個數~,
(cm-1)*(cm-1);也是一樣的嘛~
兩個相減就是m行的個數了!~ m加個數不就是左邊界了嘛~
zb+兩倍的行差就是右邊界了!~
而且正三角所到的邊界是正三角型,反三角所到的邊界是反三角型,這點要注意!

posted @ 2010-10-06 18:05 孟起 閱讀(1335) | 評論 (1)編輯 收藏

http://acm.hdu.edu.cn/showproblem.php?pid=1875

Kruscal最小生成樹 注意對double類型的快排可不要寫錯了
#include<stdio.h>
#include
<stdlib.h>
#include
<math.h>
struct road{
    
int x,y;
    
double v;
}r[
5002];
struct point{
    
int a,b;
}p[
102];
int cmp(const void *a,const void *b)
{
    
struct road *aa=(struct road *)a;
    
struct road *bb=(struct road *)b;
    
return aa->> bb->? 1:-1;
}
int bin[102];
int find(int x)
{
    
int r=x;
    
while(bin[r]!=r)
        r
=bin[r];
    
int y=x;
    
while(bin[y]!=y)
    {
        y
=bin[y];
        bin[y]
=r;
    }
    
return r;
}
int main()
{
    
int t,n,i,j,num,cnt;
    
double ans;
    scanf(
"%d",&t);
    
while(t--)
    {
        scanf(
"%d",&n);
        
for(i=0;i<n;i++)
            scanf(
"%d%d",&p[i].a,&p[i].b);
        num
=0;
        
for(i=0;i<n-1;i++)
            
for(j=i+1;j<n;j++){
                r[num].x
=i,  r[num].y=j;
                r[num].v
=sqrt(1.0*(p[i].a-p[j].a)*(p[i].a-p[j].a)+(p[i].b-p[j].b)*(p[i].b-p[j].b));
                num
++;
            }
        
for(i=0;i<n;i++)
            bin[i]
=i;
        qsort(r,num,
sizeof(r[0]),cmp);
        i
=0; ans=0; cnt=0;
        
while(r[i].v<10)
            i
++;
        
for(;i<num && cnt<n-1;i++)
        {
            
if(r[i].v>1000break;
            
int fx=find(r[i].x), fy=find(r[i].y);
            
if(fx!=fy)
            {
                bin[fx]
=fy;
                cnt
++;
                ans
+=r[i].v;
            }
        }
        
if(cnt==n-1)
            printf(
"%.1lf\n",ans*100);
        
else
            printf(
"oh!\n");
    }
    
return 0;
}
posted @ 2010-10-06 10:26 孟起 閱讀(599) | 評論 (0)編輯 收藏
最簡單的dijkstra應用,別的就不說了 題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=1874
#include<stdio.h>
#include
<string.h>
#define MAXN 201
#define MAX 999999
int dist[MAXN][MAXN],x[MAXN];
int main()
{
    
int n,m,i,j,t,s,d,a,b,time,min;
    
while(scanf("%d%d",&n,&m)==2)
    {
        
for(i=0;i<n;i++)
        {
            
for(j=0;j<n;j++)
            {
                
if(i==j)
                    dist[i][j]
=0;
                
else
                    dist[i][j]
=MAX;
            }
        }
        
for(i=0;i<m;i++)
        {
            scanf(
"%d%d%d",&a,&b,&time);
            dist[a][b]
=dist[b][a]=time<dist[a][b]?time:dist[a][b];
        }
        scanf(
"%d%d",&s,&d);
        
for(i=0;i<n;i++)
        x[i]
=dist[s][i];
        dist[s][s]
=1;
        t
=0;
        
while(t!=-1)
        {
            min
=-1;
            t
=-1;
            
for(i=0;i<n;i++)
            
if(dist[i][i]==0&&(min==-1||x[i]<min))
            {
                min
=x[i];
                t
=i;
            }
            
if(t!=-1)
            {
                dist[t][t]
=1;
                
for(i=0;i<n;i++)
                
if(x[i]>x[t]+dist[t][i])
                {
                    x[i]
=x[t]+dist[t][i];
                }
            }
        }
        
if(x[d]<MAX)
            printf(
"%d\n",x[d]);
        
else
            printf(
"-1\n");
    }
    
return 0;
}
posted @ 2010-10-06 09:23 孟起 閱讀(559) | 評論 (0)編輯 收藏
思路如下,只要房子的號碼是個完全平方數就可以逃跑了。
為什么呢???
因為完全平方數比方是25,只能分解為1,5,25,這三個數,以1代表門開了,0代表關了,則此時的序列就是1,0,1,
所以只要對輸入的數求下平方根就好了。
換句話說在區間[1,n]中能整除n的數的個數,當n是平方數是奇數個,否則是偶數個。
http://acm.hdu.edu.cn/showproblem.php?pid=1337
#include<stdio.h>
#include
<math.h>
int main()
{
    
int n,a;
    scanf(
"%d",&n);
    
while(n--)
    {
        scanf(
"%d",&a);
        printf(
"%d\n",(int)sqrt(a*1.0));
    }
    
return 0;
}
posted @ 2010-10-05 20:07 孟起 閱讀(606) | 評論 (0)編輯 收藏

在一無限大的二維平面中,我們做如下假設:
1、  每次只能移動一格;
2、  不能向后走(假設你的目的地是“向上”,那么你可以向左走,可以向右走,也可以向上走,但是不可以向下走);
3、  走過的格子立即塌陷無法再走第二次;

求走n步不同的方案數(2種走法只要有一步不一樣,即被認為是不同的方案)。
http://acm.hdu.edu.cn/showproblem.php?pid=2563

 1 /*設a[n]是向上走n步的方法數,b[n]是向左或向右走的方法數,
 2 則a[n]=a[n-1]+b[n-1], b[n]=2*a[n-1]+b[n-1]
 3 因為f[n]=a[n]+b[n]
 4 化簡得f[n]=3*a[n-1]+2*b[n-2]=2*f[n-1]+a[n-1]=2*f[n-1]+f[n-2]
 5 */
 6 #include<stdio.h>
 7 int main()
 8 {
 9     int i,t,n,f[22];
10     f[1]=3; f[2]=7;
11     for(i=3;i<=20;i++)
12         f[i]=2*f[i-1]+f[i-2];
13     scanf("%d",&t);
14     while(t--)
15     {
16         scanf("%d",&n);
17         printf("%d\n",f[n]);
18     }
19     return 0;
20 }
posted @ 2010-10-05 11:54 孟起 閱讀(653) | 評論 (0)編輯 收藏
僅列出標題
共2頁: 1 2 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            麻豆久久久9性大片| 亚洲专区一区二区三区| 久久综合伊人77777| 欧美一区不卡| 国产有码在线一区二区视频| 久久久www| 久久久久久久一区| 亚洲人线精品午夜| 一本色道久久综合亚洲精品不卡| 国产精品白丝jk黑袜喷水| 国产精品99久久久久久久久| 黄色免费成人| 欧美激情第二页| 欧美日韩在线另类| 欧美一区二区在线观看| 欧美成人午夜剧场免费观看| 亚洲手机在线| 在线欧美电影| 正在播放欧美一区| 亚洲国产专区校园欧美| 在线一区二区三区做爰视频网站| 国产手机视频精品| 亚洲激情视频在线观看| 在线视频日韩| 激情成人av在线| 亚洲精品欧美| 国产精品免费一区二区三区观看| 久久一二三四| 国产精品久久久久国产a级| 久久男人av资源网站| 欧美日本不卡| 久久久久中文| 欧美系列精品| 亚洲国产精品久久精品怡红院| 国产精品色网| 亚洲另类一区二区| 亚洲国产欧美不卡在线观看| 亚洲影视综合| 99精品国产在热久久| 久久久久久久97| 欧美在线一二三| 欧美日韩在线视频首页| 欧美激情第五页| 狠狠色丁香久久婷婷综合丁香| 99成人精品| 亚洲精品一区二区三区不| 欧美在线国产| 欧美一区二区三区四区视频 | 久久久久久久一区| 欧美三级黄美女| 亚洲第一精品电影| 国内偷自视频区视频综合| 亚洲少妇诱惑| 亚洲欧美国产一区二区三区| 欧美另类人妖| 亚洲人成在线免费观看| 亚洲国产二区| 久久综合狠狠| 欧美成人免费全部| 影音先锋另类| 亚洲日本视频| 亚洲精品1区2区| 久久免费偷拍视频| 免费亚洲婷婷| 亚洲破处大片| 欧美日韩国产黄| 99re6热只有精品免费观看| 亚洲美女毛片| 欧美日本一道本| 亚洲最新视频在线| 午夜精品久久久久久久白皮肤| 欧美视频在线观看免费网址| 一级日韩一区在线观看| 亚洲一区二区三区视频| 国产精品国产三级国产普通话99| 99精品久久| 欧美一区二区三区精品| 国产无一区二区| 蜜臀91精品一区二区三区| 亚洲黄色成人网| 亚洲免费在线| 国产亚洲一区二区三区| 夜夜嗨av一区二区三区| 亚洲午夜高清视频| 国产九区一区在线| 久久亚洲私人国产精品va| 欧美黑人一区二区三区| 99riav久久精品riav| 国产精品你懂的在线| 久久福利电影| 亚洲人成7777| 久久9热精品视频| 亚洲第一中文字幕| 欧美日韩在线一区二区三区| 欧美亚洲在线播放| 亚洲黄色av| 欧美在线影院在线视频| 亚洲国产日韩一级| 国产精品久久久久久影院8一贰佰| 午夜在线精品| 亚洲欧洲另类| 久久黄色小说| 国产精品99久久久久久久vr| 国内外成人免费激情在线视频网站| 欧美a级片网站| 亚洲欧美日韩一区在线观看| 欧美激情片在线观看| 香蕉成人伊视频在线观看 | 欧美岛国激情| 亚洲欧美日韩国产另类专区| 欧美国产日韩免费| 欧美中文字幕精品| aa亚洲婷婷| 尤物在线精品| 国产精品视频九色porn| 男女精品视频| 久久国产手机看片| 亚洲五月六月| 亚洲精品乱码| 欧美a级在线| 久久久久国产精品一区三寸| 亚洲免费观看高清完整版在线观看| 国产一区二区三区四区五区美女| 欧美区日韩区| 欧美国产视频日韩| 亚洲午夜精品久久久久久浪潮| 欧美成人国产va精品日本一级| 欧美一区二区三区啪啪| 亚洲午夜激情网页| 亚洲美洲欧洲综合国产一区| 在线精品一区二区| 狠狠色综合色综合网络| 国产欧美日韩亚洲| 国产精品一区二区在线观看不卡| 欧美色精品天天在线观看视频| 欧美成人亚洲成人| 欧美成人久久| 欧美超级免费视 在线| 久久午夜精品一区二区| 久久频这里精品99香蕉| 久久狠狠婷婷| 久久精品国产亚洲aⅴ| 久久精品国产一区二区电影 | 欧美亚洲免费| 亚洲欧美卡通另类91av| 午夜在线一区| 久久精品国产欧美激情| 久久久久综合网| 久久久久国色av免费观看性色| 欧美一区三区三区高中清蜜桃 | 亚洲手机成人高清视频| 一区二区三区在线视频免费观看| 国产精品v片在线观看不卡| 欧美视频在线观看一区| 国产伦精品一区二区三区高清版| 国产精品素人视频| 国产欧美激情| 一区二区视频欧美| 亚洲黄色影片| 亚洲视频导航| 久久精品日产第一区二区| 美女网站在线免费欧美精品| 欧美高清在线视频观看不卡| 亚洲激情黄色| 亚洲一区免费网站| 久久国产一区二区| 美女视频黄免费的久久| 欧美日韩精品二区| 国产一区二区三区四区在线观看| 亚洲国产精品久久久久秋霞不卡| 亚洲美女黄色片| 欧美综合国产精品久久丁香| 欧美成人资源网| 中国日韩欧美久久久久久久久| 久久国产99| 欧美另类99xxxxx| 国产区亚洲区欧美区| 亚洲第一网站| 亚洲欧美另类中文字幕| 蜜桃久久精品一区二区| 99re亚洲国产精品| 久久国产福利| 国产精品成人观看视频免费| 影音先锋亚洲精品| 亚洲综合第一| 亚洲国产精品久久久久久女王| 亚洲欧美日韩视频二区| 欧美国产综合| 黄色精品免费| 性欧美暴力猛交69hd| 亚洲国产99精品国自产| 午夜精品久久久久久久蜜桃app | 在线亚洲欧美专区二区| 久久综合狠狠综合久久综合88| 亚洲美女在线一区| 久久久久久亚洲精品杨幂换脸 | 亚洲国产日韩欧美在线图片| 欧美亚洲在线播放| 99精品久久免费看蜜臀剧情介绍| 久久久不卡网国产精品一区|