藍橋杯 題目標題: 排它平方數 最新真題
題目標題: 排它平方數
小明正看著 203879 這個數字發呆。
原來,203879 * 203879 = 41566646641
這有什麼神奇呢?仔細觀察,203879 是個6位數,並且它的每個數位上的數字都是不同的,並且它平方後的所有數位上都不出現組成它自身的數字。
具有這樣特點的6位數還有一個,請你找出它!
再歸納一下篩選要求:
1. 6位正整數
2. 每個數位上的數字不同
3. 其平方數的每個數位不含原數字的任何組成數位
答案是一個6位的正整數。
請通過瀏覽器提交答案。
注意:只提交另一6位數,題中已經給出的這個不要提交。
注意:不要書寫其它的內容(比如:說明性的文字)。
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv) {
int number = 123456;//最小的數字
int maxNumber = 987654;//最大的數字
int a1,a2,a3,a4,a5,a6;
int b1,b2,b3,b4,b5,b6,b7,b8,b9,b10 ,b11,b12;
int result;
int num;
int k1,k2;
for(int i = number; i <= maxNumber; i++){
a1 = i/100000;
a2 = (i-a1*100000)/10000;
a3 = (i-a1*100000-a2*10000)/1000;
a4 = (i-a1*100000-a2*10000-a3*1000)/100;
a5 = (i-a1*100000-a2*10000-a3*1000-a4*100)/10;
a6 = i-a1*100000-a2*10000-a3*1000-a4*100-a5*10;
if(a1 != a2 && a1!=a3 && a1!=a4 && a1!=a5 && a1!=a6 && a2!=a3 && a2!=a4 && a2!=a5 && a2!=a6 && a3!=a4 && a3!=a5 && a3!=a6 && a4!=a5 && a4!=a6 && a5!=a6){
num = a6 * a6;
k1 = num % 10;
k2 = num / 10;
if(k1!= a1 && k1!=a2 && k1!=a3 && k1!=a4 && k1!=a5 && k1!=a6 ){
num = a5 *a6 + a6 * a5 + k2;
k1 = num % 10;
k2 = num / 10;
if(k1!= a1 && k1!=a2 && k1!=a3 && k1!=a4 && k1!=a5 && k1!=a6 ){
num = a4 * a6 + a5 * a5 + a6 * a4 + k2;
k1 = num % 10;
k2 = num / 10;
if(k1!= a1 && k1!=a2 && k1!=a3 && k1!=a4 && k1!=a5 && k1!=a6 ){
num = a3 * a6 + a4 * a5 + a5 * a4 + a6 * a3 + k2;
k1 = num % 10;
k2 = num / 10;
if(k1!= a1 && k1!=a2 && k1!=a3 && k1!=a4 && k1!=a5 && k1!=a6 ){
num = a2 * a6 + a3 * a5 + a4 * a4 + a5 * a3 + a6 * a2 + k2;
k1 = num % 10;
k2 = num / 10;
if(k1!= a1 && k1!=a2 && k1!=a3 && k1!=a4 && k1!=a5 && k1!=a6 ){
num = a1 * a6 + a2 * a5 + a3 * a4 + a4 * a3 + a5 * a2 + a6 * a1 + k2;
k1 = num % 10;
k2 = num / 10;
if(k1!= a1 && k1!=a2 && k1!=a3 && k1!=a4 && k1!=a5 && k1!=a6 ){
num = a1 * a5 + a2 * a4 + a3 * a3 + a2 * a4 + a1 * a5 + k2;
k1 = num % 10;
k2 = num / 10;
if(k1!= a1 && k1!=a2 && k1!=a3 && k1!=a4 && k1!=a5 && k1!=a6 ){
num = a1 * a4 + a2 * a3 + a3 * a2 + a4 * a1 + k2;
k1 = num % 10;
k2 = num / 10;
if(k1!= a1 && k1!=a2 && k1!=a3 && k1!=a4 && k1!=a5 && k1!=a6 ){
num = a1 * a3 + a2 * a2 + a3 * a1 + k2;
k1 = num % 10;
k2 = num / 10;
if(k1!= a1 && k1!=a2 && k1!=a3 && k1!=a4 && k1!=a5 && k1!=a6 ){
num = a1 * a2 + a2 * a1 + k2;
k1 = num % 10;
k2 = num / 10;
if(k1!= a1 && k1!=a2 && k1!=a3 && k1!=a4 && k1!=a5 && k1!=a6 ){
num = a1 * a1 + k2;
k1 = num % 10;
k2 = num / 10;
if(k2!= a1 && k2!=a2 && k2!=a3 && k2!=a4 && k2!=a5 && k2!=a6 ){
cout<<i<<endl;
}
}
}
}
}
}
}
}
}
}
}
}
}
return 0;
}
相關推薦
藍橋杯 題目標題: 排它平方數 最新真題
題目標題: 排它平方數 小明正看著 203879 這個數字發呆。 原來,203879 * 203879 = 41566646641 這有什麼神奇呢?仔細觀察,203879 是個6位數,並且它的每個數位上的數字都是不同的,並且它平方後的所有數位上都不出現組成
第四屆藍橋杯之排它平方數
題目標題: 排它平方數 小明正看著 203879 這個數字發呆。 原來,203879 * 203879 = 41566646641 這有什麼神奇呢?仔細觀察,203879 是個6位數,並且它的每個數位上的數字都是不同的,並且它平方後的所
幾個有意思的演算法題(高斯日記、排它平方數、振興中華、顛倒的價牌)
大數學家高斯有個好習慣:無論如何都要記日記。 他的日記有個與眾不同的地方,他從不註明年月日,而是用一個整數代替,比如:4210 後來人們知道,那個整數就是日期,它表示那一天是高斯出生後的第幾天。這或許也是個好習慣,它時時刻刻提醒著主人:日子又過去一天,還有多少時光可以用於浪費呢
山東省第四屆藍橋杯 ///題目標題: 高斯日記//c/c++組
題目標題: 高斯日記 大數學家高斯有個好習慣:無論如何都要記日記。 他的日記有個與眾不同的地方,他從不註明年月日,而是用一個整數代替,比如:4210 後來人們知道,那個整數就是日期,它表示那一天是高斯出生後的第幾天。這或許也是個好習慣,它時時刻刻提
第六屆藍橋杯大賽個人賽決賽(軟體類)真題 Java語言B組 答案
標題:分機號X老闆脾氣古怪,他們公司的電話分機號都是3位數,老闆規定,所有號碼必須是降序排列,且不能有重複的數位。比如:751,520,321 都滿足要求,而,766,918,201 就不符合要求。現在請你計算一下,按照這樣的規定,一共有多少個可用的3位分機號碼?請直接提交該
第七屆藍橋杯大賽個人賽決賽(軟體類)真題 Java語言B組 答案
以下程式碼純自想自打,如有誤,請提出,如可簡,請告之,謝謝大家了。真題下載1憤怒小鳥X星球憤怒的小鳥喜歡撞火車!一根平直的鐵軌上兩火車間相距 1000 米兩火車 (不妨稱A和B) 以時速 10米/秒 相對行駛。憤怒的小鳥從A車出發,時速50米/秒,撞向B車,然後返回去撞A車,
第八屆藍橋杯大賽個人賽決賽(軟體類)真題 -----Java大學C組------樹形顯示
標題:樹形顯示對於分類結構可以用樹形來形象地表示。比如:檔案系統就是典型的例子。樹中的結點具有父子關係。我們在顯示的時候,把子項向右縮排(用空格,不是tab),並新增必要的連線線,以使其層次關係更醒目。下面的程式碼就是為了這個目的的,請仔細閱讀原始碼,並填寫劃線部分缺少的程式
第八屆藍橋杯大賽個人賽決賽(軟體類)真題 Java大學B組 答案
標題:平方十位數由0~9這10個數字不重複、不遺漏,可以組成很多10位數字。這其中也有很多恰好是平方數(是某個數的平方)。比如:1026753849,就是其中最小的一個平方數。請你找出其中最大的一個平方數是多少?注意:你需要提交的是一個10位數字,不要填寫任何多餘內容。答案:
第八屆藍橋杯大賽個人賽決賽(軟體類)真題 -----Java大學C組------數位和
標題:數位和數學家高斯很小的時候就天分過人。一次老師指定的算數題目是:1+2+...+100。高斯立即做出答案:5050!這次你的任務是類似的。但並非是把一個個的數字加起來,而是對該數字的每一個數位作累加。這樣從1加到100的“和”是:901從10加到15是:21,也就是:1
藍橋杯 算法訓練 ALGO-50 數組查找及替換
can spa clas name 要求 代碼 main 描述 define 算法訓練 數組查找及替換 時間限制:1.0s 內存限制:512.0MB 問題描述 給定某整數數組和某一整數b。要求刪除數組中可以被b整除的所有元素,同時將該數組各元素按從小到大排
藍橋杯第六屆-牌型總數&&藍橋杯第七屆-湊算式&&藍橋杯第七屆-方格填數
amp abs 絕對值 return tin ace con name 可能性 牌型總數 去掉大小王之後就相當於4套1到13的數字牌的集合(因為忽略花色了),所以1到13各有4張;枚舉思路就是考慮13種數字牌在自己手中到底有幾張,共有五種可能性,也就是某種數字牌在手中可
藍橋杯 基礎練習 特殊回文數
pan void system ali i++ 數據 util new style /*基礎練習 特殊回文數問題描述 123321是一個非常特殊的數,它從左邊讀和從右邊讀是一樣的。 輸入一個正整數n, 編程求所有這樣的五位和六位十進制數,滿足各位數字之和等於n 。輸入格
ALGO-39_藍橋杯_算法訓練_數組排序去重
define for stdio.h main 描述 AR 訓練 組成 思路 問題描述 輸入10個整數組成的序列,要求對其進行升序排序,並去掉重復元素。 輸入格式 10個整數。 輸出格式 多行輸出,每行一個元素。 樣例輸入 2 2 3 3 1 1 5 5 5
藍橋杯 基礎練習 特殊迴文數
問題描述 123321是一個非常特殊的數,它從左邊讀和從右邊讀是一樣的。 輸入一個正整數n, 程式設計求所有這樣的五位和六位十進位制數,滿足各位數字之和等於n 。 輸入格式 輸入一行,包含一個正整數n。 輸出格式 按從小到大的順序輸出滿足條件的整數
藍橋杯:練習題:迴文數
package lanqiaobei; import java.util.Scanner; /* 練習題:迴文數 一個正整數,如果交換高低位以後和原數相等,那麼稱這個數為迴文數。比如 121,2332 都是迴文數,13,456713,4567 不是迴文數。 任意一個正整數,如果其不是迴文數,將該
兩道藍橋杯題目
今天練了兩道藍橋杯的題目,感覺題目也不怎麼難,打算以後每天都做一兩題來練練手。 例題1: 網友年齡某君新認識一網友。 當問及年齡時,他的網友說: “我的年齡是個2位數,我比兒子大27歲,
第九屆藍橋杯省賽JAVA語言 C組題解_題4 第幾個幸運數
JAVA語言 C組題解_題4 第幾個幸運數 題目 解題思路 題目 標題:第幾個幸運數 到x星球旅行的遊客都被髮給一個整數,作為遊客編號。 x星的國王有個怪癖,他只喜歡數字3,5和7。 國王規定,遊客的編號如果只含有因子
藍橋杯 ADV-188 演算法提高 排列數(java) 深度優先搜尋 DFS
演算法提高 排列數 時間限制:1.0s 記憶體限制:256.0MB 問題描述 0、1、2三個數字的全排列有六種,按照字母序排列如下: 012、021、102、120、201、210 輸入一個數n 求0~9十個數的全排列中的第n個(
藍橋杯 OJ BASIC-8 迴文數
問題描述 1221是一個非常特殊的數,它從左邊讀和從右邊讀是一樣的,程式設計求所有這樣的四位十進位制數。 輸出格式 按從小到大的順序輸出滿足條件的四位十進位制數。 Think: 用陣
2018第九屆藍橋杯題目
標題:第幾天 2000年的1月1日,是那一年的第1天。 那麼,2000年的5月4日,是那一年的第幾天? 注意:需要提交的是一個整數,不要填寫任何多餘內容。 標題:方格計數在二維平面上有無數個1x1的小方格。我們以某個小方格的一個頂點為圓心畫一個半徑為1000的圓。 你能計算出這