【藍橋杯】【手機尾號評分】
【題目】
30年的改革開放,給中國帶來了翻天覆地的變化。2011全年中國手機產量約為11.72億部。手機已經成為百姓的基本日用品!
給手機選個好聽又好記的號碼可能是許多人的心願。
但號源有限,只能輔以有償選號的方法了。
這個程式的目的就是:根據給定的手機尾號(4位),按照一定的規則來打分。其規則如下:
1. 如果出現連號,不管升序還是降序,都加5分。例如:5678,4321都滿足加分標準。
2. 前三個數字相同,或後三個數字相同,都加3分。例如:4888,6665,7777都滿足加分的標準。
注意:7777因為滿足這條標準兩次,所以這條規則給它加了6分。
3. 符合AABB或者ABAB模式的加1分。例如:2255,3939,7777都符合這個模式,所以都被加分。
注意:7777因為滿足這條標準兩次,所以這條標準給它加了2分。
4. 含有:6,8,9中任何一個數字,每出現一次加1分。例如4326,6875,9918都符合加分標準。其中,6875被加2分;9918被加3分。
尾號最終得分就是每條標準的加分總和!
要求程式從標準輸入接收資料,在標準輸出上輸出結果。
輸入格式為:第一行是一個整數n(<100),表示下邊有多少輸入行,接下來是n行4位一組的資料,就是等待計算加分的手機尾號。
例如,輸入:
14
3045
….
…..
6789
8866
則輸出:
0
0
….
…
8
5
【分析】
考驗耐心的題目
1、耐心的把題目讀完
2、根據每一項評分標準進行加分
【原始碼】
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
String[] sa = new String[n];
//迴圈獲取所有的手機尾號
for (int i = 0; i < n; i++) {
sa[i] = sc.next();
}
sc.close();
for (int i = 0; i < n; i++) {
System.out.println(handlerPN(sa[i]));
}
}
//對每一個手機尾號進行評分
private static int handlerPN(String s){
int result = 0;
char[] cc = s.toCharArray();
int[] ic = new int[cc.length];
for (int i = 0; i < ic.length; i++) {
ic[i] = cc[i] - '0' ;
}
//1、判斷是否存在連號
boolean lh = true;
for (int i = 0; i < ic.length-1; i++) {
if(Math.abs(ic[i+1]-ic[i]) != 1){
lh = false;
break;
}
}
if(lh){
result += 5;
}
//2、判斷前三後三是否相同
if((ic[0]==ic[1]&&ic[1]==ic[2])){
result += 3;
}
if((ic[1]==ic[2]&&ic[2]==ic[3])){
result += 3;
}
//3、判斷是否符合AABB或者ABAB
if(ic[0]==ic[1] && ic[2]==ic[3]){
result += 1;
}
if(ic[0]==ic[2] && ic[1]==ic[3]){
result += 1;
}
//4、是否出現6、8、9的數字
for (int i = 0; i < ic.length; i++) {
if(ic[i] == 6 || ic[i] ==8 || ic[i]==9){
result += 1;
}
}
return result;
}
【結果】
0
0
8
5
相關推薦
【藍橋杯】【手機尾號評分】
【題目】 30年的改革開放,給中國帶來了翻天覆地的變化。2011全年中國手機產量約為11.72億部。手機已經成為百姓的基本日用品! 給手機選個好聽又好記的號碼可能是許多人的心願。
YTU OJ-1329: 手機尾號評分
1329: 手機尾號評分Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 204 Solved: 139[Submit][Status][Web Board]Description 30年的改革開放,給中國帶來了翻天覆地的變
煙大ACM新秀賽 E手機尾號評分
30年的改革開放,給中國帶來了翻天覆地的變化。2011全年中國手機產量約為11.72億部。手機已經成為百姓的基本日用品! 給手機選個好聽又好記的號碼可能是許多人的心願。但號源有限,只能輔以有償選號的方法了。 這個程式的目的就是:根據給定的手機尾號(4位),按照一定的規則來打分。其規
手機尾號評分
#include <iostream> using namespace std; int number=0; class Number { public: void setNumber(); void getScore();
YTUOJ-手機尾號評分
題目描述 30年的改革開放,給中國帶來了翻天覆地的變化。2011全年中國手機產量約為11.72億部。手機已經成為百姓的基本日用品! 給手機選個好聽又好記的號碼可能是許多人的心願。
【第三屆藍橋杯】手機尾號
題目:手機尾號 30年的改革開放,給中國帶來了翻天覆地的變化。2011全年中國手機產量約為11.72億部。手機已經成為百姓的基本日用品! 給手機選個好聽又好記的號碼可能是許多人的心願。但號源有限,只能輔以有償選號的方法了。 這個程式的目的就是:根據給
【藍橋杯】根據給定的手機尾號(4位),按照一定的規則來打分
import java.util.Scanner; /** * *30年的改革開放,給中國帶來了翻天覆地的變化。2011全年中國手機產量約為11.72億部。手機已經成為百姓的基本日用品! * *給手機選個好聽又好記的號碼可能是許多人的心願。但號源有限,只能輔以有
【藍橋杯】打印十字圖(圖形規律)
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
【藍橋杯】基礎練習 矩形面積交
問題描述 平面上有兩個矩形,它們的邊平行於直角座標系的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=
藍橋杯練習【基礎訓練1】-數列排序
#include<bits/stdc++.h> using namespace std; int main(){ int n ; cin>>n; int a[n]; for (int i = 0; i < n; i ++) cin&
【藍橋杯】2018.B組.Java.第二題
標題:方格計數 如圖p1.png所示,在二維平面上有無數個1x1的小方格。 我們以某個小方格的一個頂點為圓心畫一個半徑為1000的圓。 你能計算出這個圓裡有多少個完整的小方格嗎? 注意:需要提交的是一個整數,不要填寫任何多餘內容。 題解 以圓心為原點,建立