PAT乙級,1021,個位數統計
1.輸出結果需要判定統計數是否為0,所以統計數和數字應該是匹配關係的,而且數字是0-9,所以想到用陣列;
2.在統計數字時,則是隻要下標出現一次,下標對應的值相應加一
#include<iostream> #include<string> using namespace std; int main() { string s; cin >> s; int a[10] = {0}; int t = 0; for(int i=0; i<s.length();i++) { t = s[i] - '0';//輸入的是字串,-‘0’後表示為數字 a[t]++; } for(int i=0;i<10;i++) { if(a[i]!=0) cout << i << ":" << a[i] << endl; } return 0; }
相關推薦
PAT乙級,1021,個位數統計
1.輸出結果需要判定統計數是否為0,所以統計數和數字應該是匹配關係的,而且數字是0-9,所以想到用陣列; 2.在統計數字時,則是隻要下標出現一次,下標對應的值相應加一 #include<iostream> #include<string> using namespace
PAT——乙級1006:換個格式輸出整數&乙級1021:個位數統計&乙級1031:查驗身份證
all tst 順序 sub ner 簡單的 驗證 乙級 wrong 1006 換個格式輸出整數 (15 point(s)) 讓我們用字母 B 來表示“百”、字母 S 表示“十”,用 12...n 來表示不為零的個位數字 n(<10),換個格式來輸出任一個
PAT 乙級 1021 個位數統計
1021 個位數統計 (15 point(s)) 給定一個 k 位整數 N=dk−110k−1+⋯+d1101+d0 (0≤di≤9, i=0,⋯,k−1, dk−1&g
PAT 乙級 1021. 個位數統計
給定一個k位整數N=dk−1∗10k−1+...+d1∗101+d0(0<=di<=9,i=0,...,k−1,dk−1>0),請編寫程式統計每種不同的個位數字出現的
PAT乙級1021(C語言)-個位數統計 (15)
給定一個k位整數N = dk-1*10k-1 + ... + d1*101 + d0 (0<=di<=9, i=0,...,k-1, dk-1>0),請編寫程式統計每種不同的個位數字出現的次數。例如:給定N = 100311,則有2個0,3個1,和1個
PAT 1021 個位數統計
輸入格式 main sets get 次數 for () space cout https://pintia.cn/problem-sets/994805260223102976/problems/994805300404535296 給定一個k位整數N = d~k-1
PAT (Basic Level) Practice 1021 個位數統計
ase esp str for ensure 個人 stream 輸入 hit 個人練習 給定一個 k 位整數 N=d?k?1??10?k?1??+?+d?1??10?1??+d?0?? (0≤d?i??≤9, i=0,?,k?1, d?k?1??>0),請
PAT乙級,1023,組個最小數
1.將輸入儲存起來,下標儲存的數字就是該下標需要列印的次數 2.把數字1列印一次,再遍歷向量組,如果是1的話少列印一次,不是的話正常列印 #include<iostream> #include<vector> using namespace std; int main()
PAT乙級,1012,數字分類
還是有點問題,但是思路應該是對的。 1.分析題目,是5種情況分別是被5除後餘0,1,2,3,4,所以想到用switch語句,在多個固定選項中做出選擇。 2.建立一個vector,用於儲存輸入的數字 3.再遍歷整個vector,用for迴圈;當中每一個數字都是檢測是否是5種情況中的一種。 4.
PAT乙級,1011,A+B和C
看清楚題目,是先輸入一組數,然後再出結果。所以應該考慮用一個數組將輸入的數字儲存起來。而且如果開始的就輸入一個數字,一般都是為了後面的儲存做準備。 1.用兩個for迴圈將輸入儲存到二維陣列中。因為將數字放到二維陣列中,是先將一行排滿(這裡要在列迴圈),再將下一行排滿(這個又是一個迴圈)。 2.最
PAT乙級,1008,陣列元素迴圈右移
陣列右移就是將要移動的按順序先打印出來,然後再列印未移動的。 不過我這方法不能全部通過。 #include<iostream> #include<string> #include<vector> using namespace std; int main(
PAT乙級,1006,換個格式輸出整數
1.先將3位正整數的每位表示出來 2.因為百位十位是數字是多少,就輸出多少個字母,所以用for迴圈 3.個位則是從1開始輸出到個位數字為止,所以也是用for迴圈,不過初試值和條件要改變 #include<iostream> using namespace std;int main
PAT乙級,題號1001,3n+1猜想
1.因為要把n最終砍成1,所以如果n不是1的話,要對n進行操作,所以需要一個迴圈語句(for,while) 2.判斷n的奇偶,對奇偶數有不同的處理,所以需要一個選擇語句(if,switch) #include<iostream>using namespace std; int
PAT乙級 個位數統計
問題描述: 給定一個 k 位整數 N=dk−110k−1+⋯+d1101+d0 (0≤di≤9, i=0,⋯,k−1, dk−1>0),請編寫程式統計每種不同的個位數字出現的次數。例如:給定 N=100311,則有 2 個 0,3 個 1,和
PAT乙級——1090(暴力破解,未AC)
題目:危險品裝箱 (25 分) 集裝箱運輸貨物時,我們必須特別小心,不能把不相容的貨物裝在一隻箱子裡。比如氧化劑絕對不能跟易燃液體同箱,否則很容易造成爆炸。 本題給定一張不相容物品的清單,需要你檢查每一張集裝箱貨品清單,判斷它們是否能裝在同一只箱子裡。 輸入格式: 輸入第一行
PAT乙級——1088(模擬比較過程,推導公式)Java實現
題目:三人行 (20 分) 子曰:“三人行,必有我師焉。擇其善者而從之,其不善者而改之。” 本題給定甲、乙、丙三個人的能力值關係為:甲的能力值確定是 2 位正整數;把甲的能力值的 2 個數字調換位置就是乙的能力值;甲乙兩人能力差是丙的能力值的 X 倍;乙的能力值是丙的 Y 倍。請
PAT乙級——1087(陣列操作,輔助空間)java實現
題目: 有多少不同的值 (20 分) 當自然數 n 依次取 1、2、3、……、N 時,算式 ⌊ n
PAT乙級補充知識:qsort(),結構體排序
以下內容轉自網路: 對結構體一級排序 struct In { double data; int other; }s[100] //按照data的值從小到大將結構體排序,關於結構體內的排序關鍵資料data的型別可以很多種 int cmp( const void *a ,
PAT-1021 個位數統計
1021 個位數統計 (15 分) 給定一個 k 位整數 N=dk−110k−1+⋯+d1101+d0 (0≤di≤9, i=0,⋯,k−1, dk−1>
PAT乙級——1033(字串匹配,有一個錯誤和超時,暫未解決,Java)
題目:舊鍵盤打字 (20 分) 舊鍵盤上壞了幾個鍵,於是在敲一段文字的時候,對應的字元就不會出現。現在給出應該輸入的一段文字、以及壞掉的那些鍵,打出的結果文字會是怎樣? 輸入格式: 輸入在 2 行中分別