1. 程式人生 > >【藍橋杯學習記錄】【6】不定方程的解法

【藍橋杯學習記錄】【6】不定方程的解法

一次不定方程 

4 * x - 5 * y = 7;

ax + by = c;         a = 4 , b = -5 , c = 7; 
ax = c - by;
 
1 .先求一個特殊解    x0  y0 
(先不管 x,(c - by)一定能被 a 整除 , 所以先求一個特殊解)
        2 . 求通解 :
#include <iostream>
#include <cstdio>
#include <string.h>
#include <iomanip>
#include <math.h>
#include <stdlib.h>
#include <algorithm>

#define PI atan(1.0)*4

using namespace std;

int main()
{	
	//一次不定方程 
	
	/*
	4 * x - 5 * y = 7;
	for(int x = 0; x < 100; x++)
	for(int y = 0; y < 100; y++)
	{
		if(4 * x - 5 * y == 7)
			cout << "x: " << x << " y: " << y << endl;
	}
	*/
	
	// ax + by = c;        // a = 4 , b = -5 , c = 7; 
	// ax = c - by;
	 
	// 1 .先求一個特殊解    x0  y0 
		//(先不管 x,(c - by)一定能被 a 整除 , 所以先求一個特殊解)
	// 2 . 求通解 :		x = x0 + b*t 	y = y0 - at; 
	int a = 4 , b = -5 , c = 7;
	for(int y = 0; y < 100; y++)
	{
		if( (c - b*y) % a == 0)
		{
			cout << "x : " << (c - b*y) / a << ",  y : " << y << endl;
			break;
		}
			
	}
	
	
	//買不到的數目
	// ax + by = c;  x, y為整數  a, b互質
	
	
	/** 21位花朵數 水仙花數 **/
	
	// n = 3時, 153就滿足條件,  1^3 + 5^3 + 3^3 = 153
	// n = 4時, 1634就滿足條件,  1^4 + 6^4 + 3^4 + 4^4= 1634
	// n = 5時, 92737就滿足條件
	
	//求 N = 21 時, 所有可能的數字(從小到大)
	
	//暴力 ——搜尋次序 0 ~ 9 
	//左邊所有數的和 與他們的出現次序沒有關係 只與每個數出現的次數有關係
	
	//用一個數組記錄每一個數字出現幾次 
	//遞迴的方法確定一個數出現多少次 並球21次方 的和
	//結束分配則進行比較
	//看看所求的和中每個數字出現的次數和之前分配的次數是否一樣
	
	//注意 : java可以使用BigInt  c語言則更麻煩 因為long long int最多19位 只能類似於字串加減
	
	
	
	/** 六角幻方 **/ 
	/*
		*	*	*
	  *   *   *   *
	 *  *   *   *   *
	  *   *   *   *
	   *	*	*
	1 ~ 19 19個整數排列
	要求每條直線上的數字的和 全都相等 
	
	//線性方程 高斯消元法  消的左邊矩陣只剩下對角線上的元素 其他全為0
	
	//在加的過程中 每個數都被加了3次    所以可以求出15行 每一行的和是多少 
	//cout << 19*20/2*3/15;
	//即 19*20/2*3/15 = 38 ;
	
	//先初始化(行、列)   再高斯消元  顯示消元結構 最後查詢輸出 
	*/ 
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	//00:42:09 
	
	return 0;
}




x = x0 + b*t y = y0 - at; 

相關推薦

藍橋學習記錄6不定方程解法

一次不定方程 4 * x - 5 * y = 7;ax + by = c;         a = 4 , b = -5 , c = 7; ax = c - by; 1 .先求一個特殊解    x0  

藍橋真題-記事本替換運用購物單

第一題 標題: 購物單 小明剛剛找到工作,老闆人很好,只是老闆夫人很愛購物。老闆忙的時候經常讓小明幫忙到商場代為購物。小明很厭煩,但又不好推辭。 這不,XX大促銷又來了!老闆夫人開出了長長的購物單,都是有打折優惠的。 小明也有個怪癖,不到萬不得已,從不刷卡,直接現金搞

藍橋微控制器組6)uart

(1)波特率的概念:1bps = 1 bit/s (2)板載資源有兩個串列埠,僅UART1可以通過USB連線電腦 (3)四種方式波特率計算公式:(fosc:晶振頻率 ) 方式1:baud = fosc / 12; 方式2:baud = (2^smod / 32) * (T1

藍橋打印十字圖(圖形規律)

clas pan dos nbsp har name can data 圖形 題目描述 小明為某機構設計了一個十字型的徽標(並非紅十字會啊),如下所示: ..$$$$$$$$$$$$$.. ..$...........$.. $$$.$$$$$$$$$.$$$

藍橋歷屆試題 發現環

ring bool include mes 16px 技術分享 div lte HR 題目:歷屆試題 發現環 問題描述   小明的實驗室有N臺電腦,編號1~N。原本這N臺電腦之間有N-1條數據鏈接相連,恰好構成一個樹形網絡。在樹形網絡上,任意兩臺電腦之間有唯一的路徑相連。 

藍橋單片機10串行接口的進階與實戰應用

而已 也有 案例 font enter 代碼塊 通知 基本原理 init 【藍橋杯單片機10】串行接口的進階與實戰應用 廣東職業技術學院 歐浩源 串行接口作為51單片機的重要外設,編程操作並不復雜,但在實際的項目應用中,由於數據結構和通信規約的不同,其程序邏輯也

藍橋第六屆國賽C語言B組 2.完美正方形(dfs)

spa else img IT bool break main LG fill 如果一些邊長互不相同的正方形,可以恰好拼出一個更大的正方形,則稱其為完美正方形。 歷史上,人們花了很久才找到了若幹完美正方形。比如:如下邊長的22個正方形2 3 4 6 7 8 12 13 14

藍橋第六屆國賽C語言B組 1.積分之迷(水題)

水題 urn class %d names 風鈴 需要 藍橋 std 小明開了個網上商店,賣風鈴。共有3個品牌:A,B,C。為了促銷,每件商品都會返固定的積分。 小明開業第一天收到了三筆訂單:第一筆:3個A + 7個B + 1個C,共返積分:315第二筆:4個A + 10個

藍橋第七屆國賽C語言B組 2.湊平方數(dfs+STL)

ble 一個 所有 mes char next memset target article 把0~9這10個數字,分成多個組,每個組恰好是一個平方數,這是能夠辦到的。比如:0, 36, 5948721 再比如:10985247361, 25, 63907840, 4, 28

文化課每週學習記錄2018.11.12——2018.11.18

以後的週記錄和周總結。每週日更新(有空就更新吧)。 本週學習內容 閱讀《辛雷學習方法》 地理整體框架 歷史整體框架 《林黛玉進賈府》課文預讀 《步步高》語文必修三一單元第1課藍皮 語文積累本 數學知識體系 空間幾

藍橋基礎練習 矩形面積交

問題描述   平面上有兩個矩形,它們的邊平行於直角座標系的X軸或Y軸。對於每個矩形,我們給出它的一對相對頂點的座標,請你程式設計算出兩個矩形的交的面積。 輸入格式   輸入僅包含兩行,每行描述一個矩形。   在每行中,給出矩形的一對相對頂點的座標,每個點的座標都用兩個絕對值

藍橋-Minesweeper

解題思路:題目大意是說找‘.’ 的周圍有多少個‘*’這個周圍是八個方向。 可以給輸入的資料加上外圍。 #include<iostream>#include<algorithm>#include<cstring>using namespace &nbs

藍橋基礎訓練 完美的代價

問題描述   迴文串,是一種特殊的字串,它從左往右讀和從右往左讀是一樣的。小龍龍認為迴文串才是完美的。現在給你一個串,它不一定是迴文的,請你計算最少的交換次數使得該串變成一個完美的迴文串。   交換的定義是:交換兩個相鄰的字元   例如mamad   第一次交換 ad : m

藍橋練習-第五屆2014-省賽-C語言大學A組

1.猜年齡     小明帶兩個妹妹參加元宵燈會。別人問她們多大了,她們調皮地說:“我們倆的年齡之積是年齡之和的6倍”。小明又補充說:“她們可不是雙胞胎,年齡差肯定也不超過8歲啊。”     請你寫出:小明的較小的妹妹的年齡。 (10) #include <

藍橋運動員分組

運動員分組:     有N個人參加100米短跑比賽。跑道為8條,因此每組人數最多為8。     程式的任務是按照儘量使每組的人數相差最少的原則分組。例如:     N=8時,分成1組即可。     N=

藍橋2018.B組.Java.第二題

標題:方格計數 如圖p1.png所示,在二維平面上有無數個1x1的小方格。 我們以某個小方格的一個頂點為圓心畫一個半徑為1000的圓。 你能計算出這個圓裡有多少個完整的小方格嗎? 注意:需要提交的是一個整數,不要填寫任何多餘內容。 題解 以圓心為原點,建立

藍橋基礎練習 十六進位制轉十進位制

問題描述   從鍵盤輸入一個不超過8位的正的十六進位制數字符串,將它轉換為正的十進位制數後輸出。   注:十六進位制數中的10~15分別用大寫的英文字母A、B、C、D、E、F表示。 樣例輸入 FF

藍橋基礎訓練 楊輝三角形

問題描述 楊輝三角形又稱Pascal三角形,它的第i+1行是(a+b)i的展開式的係數。 它的一個重要性質是:三角形中的每個數字等於它兩肩上的數字相加。 下面給出了楊輝三角形的前4行:

藍橋網友年齡 JAVA

某君新認識一網友。當問及年齡時,他的網友說:“我的年齡是個2位數,我比兒子大27歲,如果把我的年齡的兩位數字交換位置,剛好就是我兒子的年齡”請你計算:網友的年齡一共有多少種可能情況?提示:30歲就是其中

藍橋合根植物 並查集

問題描述   w星球的一個種植園,被分成 m * n 個小格子(東西方向m行,南北方向n列)。每個格子裡種了一株合根植物。   這種植物有個特點,它的根可能會沿著南北或東西方向伸展,從而與另一個格子的植物合成為一體。 如果我們告訴你哪些小格子間出現了連根現象,你能說出這個園中一共有多少株