杭電100題(一)

来源:http://www.cnblogs.com/VincentValentine/archive/2017/09/02/7468056.html
-Advertisement-
Play Games

HDU 2000.ASCII碼排序 Description: 輸入三個字元後,按各字元的ASCII碼從小到大的順序輸出這三個字元。 Input: 輸入數據有多組,每組占一行,有三個字元組成,之間無空格。 Output: 對於每組輸入數據,輸出一行,字元中間用一個空格分開。 SampleInput: ...


HDU-2000.ASCII碼排序
Description:

輸入三個字元後,按各字元的ASCII碼從小到大的順序輸出這三個字元。

Input:

輸入數據有多組,每組占一行,有三個字元組成,之間無空格。

Output:

對於每組輸入數據,輸出一行,字元中間用一個空格分開。

SampleInput:

qwe
asd
zxc

SampleOutput:

e q w
a d s
c x z

Codes:
//#define LOCAL

#include <cstdio>

int main()
{
    #ifdef LOCAL
        freopen("E:\\Temp\\input.txt", "r", stdin);
        freopen("E:\\Temp\\output.txt", "w", stdout);
    #endif

    char a, b, c, p;

    while((p=scanf("%c%c%c\n", &a, &b, &c)) != EOF) {
        if(a > b) { p = a; a = b; b = p; }
        if(b > c) { p = b; b = c; c = p; }
        if(a > b) { p = a; a = b; b = p; }
        printf("%c %c %c\n", a, b, c);  
    }

    return 0;
}
HDU-2001.計算兩點間的距離
Description:

輸入兩點坐標(X1,Y1),(X2,Y2),計算並輸出兩點間的距離。

Input:

輸入數據有多組,每組占一行,由4個實數組成,分別表示x1,y1,x2,y2,數據之間用空格隔開。

Output:

對於每組輸入數據,輸出一行,結果保留兩位小數。

SampleInput:

0 0 0 1
0 1 1 0

SampleOutput:

1.00
1.41

Codes:
//#define LOCAL

#include <cstdio>
#include <cmath>

int main()
{
    #ifdef LOCAL
        freopen("E:\\Temp\\input.txt", "r", stdin);
        freopen("E:\\Temp\\output.txt", "w", stdout);
    #endif

    double a, b, c, d, p;
    while(scanf("%lf%lf%lf%lf", &a, &b, &c, &d) != EOF) {
        p = sqrt(pow(c-a, 2)+pow(d-b, 2));
        printf("%.2f\n", p);
    }

    return 0;
}
HDU-2002.計算球體積
Description:

根據輸入的半徑值,計算球的體積。

Input:

輸入數據有多組,每組占一行,每行包括一個實數,表示球的半徑。

Output:

輸出對應的球的體積,對於每組輸入數據,輸出一行,計算結果保留三位小數。

SampleInput:

1
1.5

SampleOutput:

4.189
14.137

Codes:
//const double PI = acos(-1.0);
//#define LOCAL

#include <cstdio>
#include <cmath>

int main()
{
    #ifdef LOCAL
        freopen("E:\\Temp\\input.txt", "r", stdin);
        freopen("E:\\Temp\\output.txt", "w", stdout);
    #endif

    double r, v;
    const double PI = 3.1415927;
    while(scanf("%lf", &r) != EOF) {
        v = PI*pow(r, 3)*4/3;
        printf("%.3f\n", v);
    }

    return 0;
}
HDU-2003.求絕對值
Description:

求實數的絕對值。

Input:

輸入數據有多組,每組占一行,每行包含一個實數。

Output:

對於每組輸入數據,輸出它的絕對值,要求每組數據輸出一行,結果保留兩位小數。

SampleInput:

123
-234.00

SampleOutput:

123.00
234.00

Codes:
//#define LOCAL

#include <cstdio>
#include <cmath>

int main()
{
    #ifdef LOCAL
        freopen("E:\\Temp\\input.txt", "r", stdin);
        freopen("E:\\Temp\\output.txt", "w", stdout);
    #endif

    double a;
    while(scanf("%lf", &a) != EOF)
        printf("%.2f\n", fabs(a));

    return 0;
}
HDU-2004.成績轉換
Description:

輸入一個百分制的成績t,將其轉換成對應的等級,具體轉換規則如下:
90~100為A; 80~89為B; 70~79為C; 60~69為D; 0~59為E;

Input:

輸入數據有多組,每組占一行,由一個整數組成。

Output:

對於每組輸入數據,輸出一行。如果輸入數據不在0~100範圍內,請輸出一行:“Score is error!”。

SampleInput:

56
67
100
123

SampleOutput:

E
D
A
Score is error!

Codes:
//#define LOCAL

#include <cstdio>

int main()
{
    #ifdef LOCAL
        freopen("E:\\Temp\\input.txt", "r", stdin);
        freopen("E:\\Temp\\output.txt", "w", stdout);
    #endif

    int a;
    while(scanf("%d", &a) != EOF) {
        if(a>100 || a<0) printf("Score is error!\n");
        else if(a >= 90) printf("A\n");
        else if(a >= 80) printf("B\n");
        else if(a >= 70) printf("C\n");
        else if(a >= 60) printf("D\n");
        else printf("E\n");
    }

    return 0;
}
HDU-2005.第幾天?
Description:

給定一個日期,輸出這個日期是該年的第幾天。

Input:

輸入數據有多組,每組占一行,數據格式為YYYY/MM/DD組成,具體參見sample input,另外,可以向你確保所有的輸入數據是合法的。

Output:

對於每組輸入數據,輸出一行,表示該日期是該年的第幾天。

SampleInput:

1985/1/20
2006/3/12

SampleOutput:

20
71

Codes:
//#define LOCAL

#include <cstdio>

int a[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

int main()
{
    #ifdef LOCAL
        freopen("E:\\Temp\\input.txt", "r", stdin);
        freopen("E:\\Temp\\output.txt", "w", stdout);
    #endif

    int i, y, m, d, t;
    while(scanf("%d/%d/%d", &y, &m, &d) != EOF) {
        t = 0;
        for(i=0; i<m; ++i) t += a[i]; t += d; 
        if((!(y%4)&&y%100) || !(y%400)) if(m > 2) ++t;
        printf("%d\n", t);
    }

    return 0;
}
HDU-2006.求奇數的乘積
Description:

給你n個整數,求他們中所有奇數的乘積。

Input:

輸入數據包含多個測試實例,每個測試實例占一行,每行的第一個數為n,表示本組數據一共有n個,接著是n個整數,你可以假設每組數據必定至少存在一個奇數。

Output:

輸出每組數中的所有奇數的乘積,對於測試實例,輸出一行。

SampleInput:

3 1 2 3
4 2 3 4 5

SampleOutput:

3
15

Codes:
//b = 2^n, a%b = a&b-1
//#define LOCAL

#include <cstdio>
#include <cmath>

int main()
{
    #ifdef LOCAL
        freopen("E:\\Temp\\input.txt", "r", stdin);
        freopen("E:\\Temp\\output.txt", "w", stdout);
    #endif

    int a, b, c, i;
    while(scanf("%d", &a) != EOF) {
        for(c=1, i=0; i<a; ++i) {
            scanf("%d", &b);
            if(b & 1) c *= b;
        }
        printf("%d\n", c);
    }

    return 0;
}
HDU-2007.平方和與立方和
Description:

給定一段連續的整數,求出他們中所有偶數的平方和以及所有奇數的立方和。

Input:

輸入數據包含多組測試實例,每組測試實例包含一行,由兩個整數m和n組成。

Output:

對於每組輸入數據,輸出一行,應包括兩個整數x和y,分別表示該段連續的整數中所有偶數的平方和以及所有奇數的立方和。
你可以認為32位整數足以保存結果。

SampleInput:

1 3
2 5

SampleOutput:

4 28
20 152

Codes:
//pow(5, 3) = 124?
//#define LOCAL

#include <cstdio>

int main()
{
    #ifdef LOCAL
        freopen("E:\\Temp\\input.txt", "r", stdin);
        freopen("E:\\Temp\\output.txt", "w", stdout);
    #endif

    int a, b, i, p, q;
    while(scanf("%d%d", &a, &b) != EOF) {
        if(a > b) { i = a; a = b; b = i; }
        for(p=q=0, i=a; i<=b; ++i)  
            i&1 ? q+=i*i*i : p+=i*i;
        printf("%d %d\n", p, q);
    }
    
    return 0;
}
HDU-2008.數值統計
Description:

統計給定的n個數中,負數、零和正數的個數。

Input:

輸入數據有多組,每組占一行,每行的第一個數是整數n(n<100),表示需要統計的數值的個數,然後是n個實數;如果n=0,則表示輸入結束,該行不做處理。

Output:

對於每組輸入數據,輸出一行a,b和c,分別表示給定的數據中負數、零和正數的個數。

SampleInput:

6 0 1 2 3 -1 0
5 1 2 3 4 0.5
0

SampleOutput:

1 2 3
0 0 5

Codes:
//#define LOCAL

#include <cstdio>

int main()
{
    #ifdef LOCAL
        freopen("E:\\Temp\\input.txt", "r", stdin);
        freopen("E:\\Temp\\output.txt", "w", stdout);
    #endif

    int n, a, b, c;
    double x;
    while(scanf("%d", &n), n) {
        a = b = c = 0;
        while(n--) {
            scanf("%lf", &x);
            if(x < 0) ++a;
            else if(x > 0) ++c;
            else ++b;
        }
        printf("%d %d %d\n", a, b, c);
    }

    return 0;
}
HDU-2009.求數列的和
Description:

數列的定義如下:
數列的第一項為n,以後各項為前一項的平方根,求數列的前m項的和。

Input:

輸入數據有多組,每組占一行,由兩個整數n(n<10000)和m(m<1000)組成,n和m的含義如前所述。

Output:

對於每組輸入數據,輸出該數列的和,每個測試實例占一行,要求精度保留2位小數。

SampleInput:

81 4
2 2

SampleOutput:

94.73
3.41

Codes:
//#define LOCAL

#include <cstdio>
#include <cmath>

int main()
{
    #ifdef LOCAL
        freopen("E:\\Temp\\input.txt", "r", stdin);
        freopen("E:\\Temp\\output.txt", "w", stdout);
    #endif 

    int m;
    double a, n;
    while(scanf("%lf%d", &n, &m) != EOF) {
        for(a=0; m--; n=sqrt(n)) a += n;
        printf("%.2f\n", a);
    }

    return 0;
}

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在很多場合,我們需要線上編輯HTML內容,然後在頁面上或者其他終端上(如小程式、APP應用等)顯示,編輯HTML內容的插件有很多,本篇介紹基於Bootstrap的 summernote插件實現HTML文檔的編輯和圖片插入操作,這個控制項的使用非常方便,並且用戶群也很大。 ...
  • 郵件的內容其實是就HTML,傳統的做法都是通過在程式中拼接字元串來生成郵件的內容,生成困難,維護也困難。Razor是MVC裡面使用的視圖引擎,用來生成HTML非常方便,ZKEACMS中就是使用了Razor視圖引擎,用cshtml作為郵件模板來生成郵件內容。這樣很方便維護和修改。 ...
  • using System;using System.Drawing;using System.Windows.Forms; namespace 案例演示{ public partial class frmlogo : Form { public frmlogo() { InitializeCompo ...
  • 總結和開始記錄實驗的現象,調試代碼的經驗,同時開始用博客記錄一些技術上的進步 2017-09-01 09:01:02 1、 picturebox 上 進行覆蓋,移動,大小改變,都會觸發控制項重繪事件,重繪其本身和其所有的子控制項, 所以以繪圖區域為父容器的pictureBox在程式運行時進行的任意操作只 ...
  • python的文件操縱方法: file.readline() 讀取下一行文件,返回含有內容的字元串 file.readlines() 讀取整個文件,返回一個字元串列表 file.read() 讀取整個文件,返回一個字元串 f = open("filename","mode") 打開一個文件,mode ...
  • 要自己寫一個存儲系統,可以依照以下步驟: 1.寫一個繼承自django.core.files.storage.Storage的子類。 2.Django必須可以在無任何參數的情況下實例化MyStorage,所以任何環境設置必須來自django.conf.settings。 3.根據Storage的op ...
  • 什麼是抽象類?這名字聽著就挺抽象的,第一次聽到這個名字還真有可能被唬住。但是,就像老人家所說的,一切反動派都是紙老虎,一切有著裝x名字的概念也是紙老虎。好吧,我們已經從戰略上做到了藐視它,現在就要戰術上重視它,如同要解決紙老虎,就要一個牙齒一個牙齒地敲,一個爪子一個爪子地拔;解決這種抽象概念也一樣, ...
  • 在類SpringbootdemoApplication上右鍵Run as選擇Spring Boot App後Console輸出報錯日誌如下: com.mongodb.MongoSocketOpenException: Exception opening socketat com.mongodb.co ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...