Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

โค้ด C++ ตรวจสอบเบอร์โทรศัพท์จากสตริงตัวเลข

สมมติว่าเรามีสตริง S n หลัก หมายเลข 11 หลักเป็นเบอร์โทรถ้าเริ่มต้นด้วย '8' ในหนึ่งการดำเนินการ ลบหนึ่งหลักจาก S ได้ ตรวจสอบว่าทำให้ S เป็นเบอร์โทรถูกต้องได้หรือไม่

เช่น ถ้าอินพุตคือ S = "5818005553985" เอาต์พุตจะเป็น True เพราะทำเป็น "8005553985" 11 หลัก ตัวแรกคือ 8

ขั้นตอนการแก้ปัญหา

m := ขนาดของ S
ใส่ '8' ท้าย S
if ตำแหน่งของ 8 <= (m - 11):
    return true
return false

ตัวอย่างโค้ด

#include <bits/stdc++.h>
using namespace std;

bool solve(string S) {
    int m = S.size();
    S.push_back('8');
    if ((int(S.find('8')) <= (m - 11)))
        return true;
    return false;
}

int main() {
    string S = "5818005553985";
    cout << solve(S) << endl;
}

อินพุต

"5818005553985"

เอาต์พุต

1