1. 程式人生 > >《演算法競賽入門經典》位數(習題2-1) & 水仙花數(習題2-2)

《演算法競賽入門經典》位數(習題2-1) & 水仙花數(習題2-2)

/*
位數
	輸入一個不超過10^9的正整數,輸出它的位數。 
*/
#include<stdio.h>
int main(){
	int n;
	scanf("%d",&n);
	int count=1;
	while(n>=10){
		n=n/10;
		count++;
	}
	printf("%d\n",count);
} 

/*
水仙花數
	輸出100-999中的所有水仙花數。若3位數ABC滿足ABC=A^2+B^2+C^2,則稱其為水仙花數。 
*/ 
#include<stdio.h>
int main(){
	int i,a,b,c;
	for(i=100;i<1000;i++){
		a=i/100;
		b=i%100/10;
		c=i%10;
		if(i==a*a*a+b*b*b+c*c*c)
		printf("%d\n",i);
	}	
}
		

相關推薦

演算法競賽入門經典位數習題2-1 & 水仙花習題2-2

/* 位數 輸入一個不超過10^9的正整數,輸出它的位數。 */ #include<stdio.h> int main(){ int n; scanf("%d",&n);

演算法競賽入門經典第二版第三章陣列和字串習題3-2分子量

給出一種物質的分子式不帶括號,求分子量。本題中的分子式只包含4種原子分別為CHON,原子量分別為12.01,1.008,16.00,14.01(單位g/mol)。例如,C6H5OH的分子量是94.108g/mol #include <stdio.h> int main() {

演算法競賽入門經典 習題2-5 分數化小數decimal

                                           分數化小數(decimal) 輸入正整數a,b,c,輸出a/b的小數形式,精確到小數點後c位。a,b≤106,c≤

演算法競賽入門經典2第二章習題

本文部分習題參考了litiouslove的blog: http://blog.csdn.net/litiouslove/article/details/7891700 習題2-1 水仙花數(daffodil) 輸出100~999中的所有水仙花數。若3位數ABC滿足ABC=A3+B3+

演算法競賽入門經典2習題4-3 黑白棋 Othello UVa220

這題邏輯和習題4-1象棋很相似,沒什麼特別的。 第一次提交報wa,添加了若干樣例測試,發現邏輯無誤。 與樣例輸出對拍後發現輸出尾部多了一個換行符,修改後ac。 //#define LOCAL //#define TESTING #include<stdio.h>

演算法競賽入門經典2習題3-4 週期串 Periodic Strings UVa445

這題把我虐哭了。 提交了13次才ac。 演算法本身沒什麼好說的,UVa上html版和pdf版的輸入輸出格式要求不一樣,以html版為準。 而且html版的輸入輸出格式都有點奇葩,不認真看原文細節是ac不了的。 參考了他的例程,我才找到問題的解決辦法。 UVa評測系統中的空

演算法競賽入門經典2習題4-5 IP網路 IP Networks UVa1590

這道題的邏輯很簡單,讀入所有的ip地址,確認總共32位二進位制數中最左一個不同是在哪裡出現的,然後按規則輸出網路地址與子網掩碼即可。 可上傳後我發現它就是wa...還是wa...總是wa...... 然後我在網上找到了例程,設想出了很多測試資料,用fc拍來拍去,總是報告“找

習題2-4 子序列的和subsequence 演算法競賽入門經典 第二版

#include<iostream> #include<cstdio> #include<cmath> using namespace std; int main

演算法競賽入門經典 習題2-3 韓信點兵hanxin

習題2-3 韓信點兵(hanxin) 相傳韓信才智過人,從不直接清點自己軍隊的人數,只要讓士兵先後以三人一排、五人一排、七人一排地變換隊形,而他每次只掠一樣隊伍的排尾就知道總人數了。輸入3個非負整數a,b,c,表示每種隊形排尾的人數(a<3,b<5

演算法競賽入門經典 習題2-4 倒三角形triangle

習題2-4 到三角形(triangle) 輸入正整數n<=20,輸出一個n層的到三角形。例如n=5時輸出如下: #########  #######   #####    ###     # (大概就像上面這個樣子吧,Markdown不太好打

演算法競賽入門經典第二版習題 2-2 韓信點兵

#include <cstdio> #include <iostream> //演算法競賽入門經典(第二版)習題 2-2 pages-34 using namespa

演算法競賽入門經典2習題3-5 謎題Puzzle) Uva227

C++編寫 #include<iostream> using namespace std; int main() { int x = 2, y = 1; char Pu

演算法競賽入門經典2習題4-5 IP網路UVa1590

#include <stdio.h> #include <string.h> int twoip[1005][35]; void changetwo(int num, int i, int j) { int q, chu = num; //printf("%d %d %d\n",

UVa220 演算法競賽入門經典2習題4-3 黑白棋 Othello

 老規則   題目解釋看他們的  程式碼看我的。。         可能我的程式碼略微濃縮一些。  。。 。。我找了半天,,程式碼寫的都好長。,要是看懂了題目的話 就看我的程式碼吧。 http://blog.csdn.net/kyoma/article/details/51

演算法競賽入門經典第二版第三章陣列和字串習題3-4週期串

如果一個字串可以由某個長度為k的字串重複多次得到,則稱該串以k為週期。例如abcabcabc以3為週期(注意,它也以6和12為週期)。輸入一個長度不超過80的字串,輸出其最小週期 #include<stdio.h> int main() { char a[100];

演算法競賽入門經典第二版第三章陣列和字串習題3-3數字

把前n(n<=10000)個整數順次解除安裝一起:123456789101112…數一數0~9各出現多少次(輸出10個整數,分別是0,1,…,9出現的次數) #include<stdio.h> #define N 100000 char s[N],temp[10]; i

演算法競賽入門經典第二版第三章陣列和字串習題3-1得分

給出一個由O和X組成的串(長度1-80)統計得分。每個O的得分為目前連續出現的O的個數,X的得分為0。 #include <stdio.h> int main() { int b=0,c=0; int j=1; char a[80]; scan

演算法競賽入門經典第二版第二章迴圈結構程式設計註解與習題

2-4子序列的和 輸入兩個正整數n<m<10^6,輸出1/ n^2+1/ (n+1)^2+……+1/ m^2,保留5位小數。輸入包含多組資料,結束標記為n=m=0.提示:本題有陷阱 本題思路在於乘法溢位的問題 陷阱就是關於int型別的極限,因為Int的上限是2^32-

演算法競賽入門經典第二版第二章迴圈結構程式設計註解與習題

習題2-1水仙花數 輸出100-999中的所有水仙花數。若三位數ABC滿足ABC=A^3+ B^3+ C^3,則稱其為水仙花數。例如153= 1^3+ 5^3+ 3^3,所以153是水仙花數 #include<stdio.h> int main() { in

使用檔案進行輸入輸出的兩種方式演算法競賽入門經典2

使用檔案進行輸入輸出的兩種方式: 1,  重定向       freopen("input.txt", "r", stdin);       freopen("output.txt", "w", stdout);       上述語句將使得scanf從檔案input.