東華大學OJ一維陣列 缺失的頁碼

2021-10-10 20:33:37 字數 1596 閱讀 7621

東華大學oj一維陣列 缺失的頁碼

2020.11.25

問題:明明在一家圖書館裡工作,他的主要任務是修補缺損的圖書。有一次,圖書館裡面收到一大批損壞的圖書,這些圖書有乙個特點,每本書頁碼的編排方式為:(1,2)(3,4)(5,6)……,括號內數字指一張紙的正反兩頁,每本書都只少了其中的一張書紙,然後還知道剩下的各頁碼之和是多少。明明現在的主要工作是把那張缺失的頁找到,然後再補進一張,這樣就完成了圖書的修補工作。但是明明發現,這並不是一件很輕鬆就可以完成的事情,因為有些書非常厚,無法立刻找到缺失的那一張。於是明明只能從頭開始,一張一張的翻閱圖書,直至找到那一張缺失的頁為止,這樣的工作效率顯然是非常低的。 你是一名程式設計專家,同時也是明明的好朋友,你看到明明如此辛苦的工作,就萌發了幫助明明的想法,你問明明能不能把書的頁碼和(缺失一張紙後的書的頁碼之和)告訴你,明明說:「當然沒問題」,於是就把頁碼和告訴了你。你得到了頁碼和後,就寫了乙個程式,利用程式,很快就算出了缺失的那頁紙的頁碼是多少,並得到了完整的頁碼總和,這樣就極大地幫助了明明,使他的工作很快就完成了,明明也因此請你吃了頓飯,感謝你對他的幫助。 明明的問題可以歸結為:一本書,中間少了一張紙,剩下的各頁碼之和為s。已知每張紙有兩個相鄰頁碼,編排方式為:(1,2)(3,4)(5,6)……,括號內數字指一張紙的正反兩頁。你的任務是對於輸入的s,求這本書原來的總頁數t,以及少掉的那兩頁的頁數,a和b。如果找不到缺失的頁碼,則輸出impossible。

輸入說明:

你寫的程式要求從標準輸入裝置中讀入測試資料作為你所寫程式的輸入資料。標準輸入裝置中有多組測試資料,每組測試資料僅佔一行,每行僅包括乙個正整數s(1≤s≤5050),代表書的頁碼總和。當s=0的時候,表示輸入結束。每組測試資料與其後一組測試資料之間沒有任何空行,第一組測試資料前面以及最後一組測試資料後面也都沒有任何空行。

輸出說明:

對於每一組測試資料,你寫的程式要求計算出一組相應的運算結果,並將這一組運算結果作為你所寫程式的輸出資料依次寫入到標準輸出裝置中。每組運算結果為三個整數t、a、b,整數之間用乙個空格隔開,三個整數分別表示書完整的頁碼總和和缺失的那一張書紙的正反面兩個頁碼。每組運算結果單獨形成一行資料,其行首和行尾都沒有任何空格,每組運算結果與其後一組運算結果之間沒有任何空行,第一組運算結果前面以及最後一組運算結果後面也都沒有任何空行。 注:通常,顯示屏為標準輸出裝置。

standard input:910

0standard output:

impossible

6 5 6

#include

#include

#include

//#include// sort();

using

namespace std;

intmain()

int sum=0;

int n=0;

while

(sum//前n頁合等於s,說明少的是最後一張

if(sum==s)

//多少頁的和就大於該數

int temp = sum-s;

bool flag =0;

for(

int i =

1;i<=n;i++)}

if(!flag)

}return0;

}

東華OJ 一維陣列競賽 雙重回文數

日常zb 這oj確實看運氣的嗎,之前抽到的題一點思路都沒有,現在都輕輕鬆鬆 bushi 我自己分解為 1.回文數處理。2.連續進製轉換。3.好像沒了。解決方法 1.我自己的做法喜歡空間換時間,準備兩個等長陣列。然後將第乙個陣列存正序,另乙個存逆序。最後for迴圈比較每一項即可。2.連續進製轉換。因為...

東華大學 oj1 求長方形的面積和周長

問題描述 求乙個長方形的面積s及周長p。面積的公式為s a b,周長的公式p 2 a b 其中a代表長方形的長,b代表長方形的寬。輸入說明 你的程式需要從標準輸入裝置 通常為鍵盤 中讀入兩個整數 乙個整數a 0 a 10000 代表長方形的長 乙個整數b 0 b 10000 代表長方形的寬 在a和b...

陣列的概述 一維陣列

1.陣列的理解 陣列 array 是多個相同型別資料按一定順序排列的集合,並使用乙個名字命名,並通過編號的方式對這些資料進行統一管理。2.陣列相關的概念 陣列名 陣列的元素 角標 下標 索引 陣列的長度 元素的個數 3.陣列的特點 4.陣列的分類 5.一維陣列的使用 public class arr...