四平方和定理,又稱為拉格朗日定理:每個正整數都可以表示為至多4個正整數的平方和。
如果把0包括進去,就正好可以表示為4個數的平方和。
比如:5 = 0^2 + 0^2 + 1^2 + 2^2
7 = 1^2 + 1^2 + 1^2 + 2^2
(^符號表示乘方的意思)
對於乙個給定的正整數,可能存在多種平方和的表示法。
要求你對4個數排序:
0 <= a <= b <= c <= d
並對所有的可能表示法按 a,b,c,d 為聯合主鍵公升序排列,最後輸出第乙個表示法
程式輸入為乙個正整數n (n<5000000)
要求輸出4個非負整數,按從小到大排序,中間用空格分開
例如,輸入:
5則程式應該輸出:
0 0 1 2
再例如,輸入:
12則程式應該輸出:
0 2 2 2
再例如,輸入:
773535
則程式應該輸出:
1 1 267 838
資源約定:
峰值記憶體消耗(含虛擬機器) < 256m
cpu消耗 < 3000ms
請嚴格按要求輸出,不要畫蛇添足地列印類似:「請您輸入…」 的多餘內容。
#include
#include
#include
using
namespace std;
int n;
map<
int,
int>cache;
intmain()
}for
(int a =
0; a * a <= n /4;
++a)}}
}
當然直接四重迴圈也可以;
設計:stl中map集合類
#include
struct node
;int ans =0;
int x[4]
=;int y[4]
=;int book[10]
[10]=
;void
dfs(node p1, node p2)
node pp1, pp2;
for(
int i =
0; i <
4; i++)}
}int
main()
小明正在整理一批歷史文獻。這些歷史文獻**現了很多日期。小明知道這些日期都在2023年1月1日至2023年12月31日。令小明頭疼的是,這些日期採用的格式非常不統一,有採用年/月/日的,有採用月/日/年的,還有採用日/月/年的。更加麻煩的是,年份也都省略了前兩位,使得文獻上的乙個日期,存在很多可能的日期與其對應。**:比如02/03/04,可能是2023年03月04日、2023年02月03日或2023年03月02日。
給出乙個文獻上的日期,你能幫助小明判斷有哪些可能的日期對其對應嗎?
輸入格式
乙個日期,格式是"aa/bb/cc"。 (0 <= a, b, c <= 9)
輸出格式
輸出若干個不相同的日期,每個日期一行,格式是"yyyy-mm-dd"。多個日期按從早到晚排列。
樣例輸入
02/03/04
樣例輸出
2002-03-04
2004-02-03
2004-03-02
#include
#include
#include
using
namespace std;
bool
isleap
(int year)
void
i2s(
int i, string &s)
string f
(int a,
int b,
int c)
//轉化為字串
string _a, _b, _c;
i2s(a, _a)
;i2s
(b, _b)
;i2s
(c, _c);if
(_b.
length()
==1)_b =
'0'+ _b;
if(_c.
length()
==1)_c =
'0'+ _c;
return _a +
"-"+ _b +
"_"+ _c;
}int
main()
return0;
}
stl-setc++中的集合set
實力有限,不會。
看完就能會。
使用了二分法
直接參考:分巧克力解析
注意:int m=(l+r)>>1,相當於/2取整。
自己的想法時超時的。。。。。。
請參考:
藍橋杯準備一
剛剛拿到藍橋杯的開發板,整整花了200大洋,之前也學過51,現在來看這塊開發板,真是貴的不行!可用的輔助外設和晶元資源並不值這200塊錢。看來網上的評價藍橋杯圈錢的看來並不是空虛來風,拿到板子第一步,來擼個led的點亮。再繼續查詢y4c 的控制端還經過了乙個或非門,ps 真是醉了!原本就是一句 的時...
藍橋杯 楊輝三角
題目 楊輝三角 問題描述 楊輝三角形又稱pascal三角形,它的第i 1行是 a b i的展開式的係數。它的乙個重要性質是 三角形中的每個數字等於它兩肩上的數字相加。下面給出了楊輝三角形的前4行 11 1 1 2 1 1 3 3 1 給出n,輸出它的前n行。輸入格式 輸入包含乙個數n。輸出格式 輸出...
藍橋杯 三羊獻瑞
三羊獻瑞 觀察下面的加法算式 祥 瑞生 輝 三羊 獻 瑞 三 羊 生 瑞 氣 其中,相同的漢字代表相同的數字,不同的漢字代表不同的數字。請你填寫 三羊獻瑞 所代表的4位數字 答案唯一 不要填寫任何多餘內容。思路 迴圈遍歷每乙個漢字代表的數字。即可轉換為 a b c d e f g b e f c b...