Gửi bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
0.5s
Giới hạn bộ nhớ:
256M
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift
Viết chương trình đếm số lượng chữ số của một số nguyên ~n~ nhập từ bàn phím.
Input
- Số nguyên ~n~
Giới hạn
- ~|n| \le 10^{1000} ~
Output
Số lượng chữ số của số ~n~
Sample
Input #1
1234
Output #1
4
Bình luận
bài này bắt nhập n lớn quá ạ, e muốn hỏi là boost::multiprecision k dùng được hả mọi người, e chạy đc trên codeblock nhưng nộp bài trên web k chạy đc ạ=(
dùng string nhé
include <iostream>
include<string.h>
using namespace std; int main() { string n; cin>>n; int dem=1; if(n[0]=='-') { cout<<n.size()-1; return 0; } cout<<n.size(); return 0; }
include <iostream>
include <string>
using namespace std;
int main(){ string n; cin>>n; int count = 0; for (char digit : n) { if (isdigit(digit)) { count++; } } cout << count << endl; return 0; }
Sử dụng chuỗi và lưu ý với trường hợp số âm nhé
char c;short int cnt=0;int main(){scanf("%c",&c);if(c=='-'){scanf("%c",&c);}while(c>='0'){cnt++;scanf("%c",&c);}printf("%hd",cnt);}
test 6 là gì v ạ
char number[1000]; fgets(number,1000,stdin); int i,count = 0; for(i = 0; i < strlen(number); i++){ if(number[i] >= '0' && number[i] <= '9' && number[i] != '-'){ count++; } } printf("%d",count); sai case cuối ae xem giúp mình vs
cho em hỏi code em thiếu trường hợp nào chỉ đúng 2 test đầu ạ:
include <iostream>
include <cmath>
using namespace std;
int main(){ int n,d=0; cin >> n; while(n!=0){ n=n/10; d++; } cout << d; return 0; }
dữ liệu vào có thể lên đến 1000 kí tự nên bạn dùng string nhé và chú ý trường hợp số âm nữa
Mọi người cho em hỏi em làm thế sao sai ở test 5 v ạ?
.
.
include <bits/stdc++.h>
using namespace std; int main() { iosbase::syncwith_stdio(false); cin.tie(NULL); string n; cin>>n; n[n.size()] = 'p'; int cnt = 0, i=0; while(n[i]!='p'){ if(n[i]>='0' && n[i] <= '9'){ cnt++; } i++; } cout<<cnt; return 0; }
print(len(str(abs(int(input())))))
#include<bits/stdc++.h>
using namespace std; int main() { int i = 0, count = 0; string str; cin>>str; while (str[i]) { if ((str[i]>='0') && (str[i]<='9')){ count++; } i++; } cout << count; return 0; }
TRÒ CHƠI CỦA ÔNG GIÁO ẸC
include <bits/stdc++.h>
using namespace std;
int main() { string s; cin>>s; if(s[0]=='-') cout<<s.length()-1; else cout<<s.length(); return 0; }
cho mình hỏi test 6 là gì vậy mn, code mình như này bị sai test 6 n = input() s = "" for i in n: if i in "0123456789": s += i print(len(s.lstrip("0")))
code nè
include<bits/stdc++.h>
using namespace std; int main(){ string n; cin>>n; cout<<n.size(); }
hình như cái này sai tới mấy testcase lận thiếu trường hợp số âm nữa
Full test cho các bạn tham khảo.
include <bits/stdc++.h>
using namespace std;
int main(){ string n; getline(cin,n); int cnt = n.length(); while(n[0]=='-'){ n.erase(n.begin()); cnt--; } cout << cnt << endl; return 0; }
include <stdio.h>
Cũng dễ :]
Java chào các đạo hữu =]]z
tôi cũng học java mà ông giải kiểu j mà nó đúng hết tất cả các test case hay v chỉ tôi với
mọi người ơi cho em hỏi bài này code c thì làm như nào ạ
giới hạn 1000 chữ số bạn khai báo 1 chuỗi 1001 ký tự. Nếu kí tự thứ 0 là " - " thì in ra độ dài chuỗi -1
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
hao no
java
import java.util.*;
public class CountDigits {
}
n = input() n = n.lstrip("0") n = n.replace(' ', '') count = len(n) print (count)
cứu các cậu ơi chả hiểu sao sửa như nào cũng sai =(( mà chả biết sai ở đâu nên k sửa dc
Bạn nào mà dùng python mà làm thì mình thấy ép kiểu từ int sang str rồi mình dùng len() để đếm chữ số cũng ổn đấy
n = abs(int(input())) S = 0 if n == 0: S = 1 else: while n != 0: S += 1 n //= 10 print(S)
ko cần ép int sang str cũng ko cần abs bài có hai trường hợp đó là n>=10 và n<=-10 dùng while rồi đếm như bình thường thôi nha bạn
cho mình hỏi test 5 là gì vậy?
hình như nhập 0 hoặc -0 á bạn
bài này nếu có test 000001 thì các bạn thêm hàm xóa số 0 đi while(int(s[0]) == 48)
bài này mình dùng string thì acp all luôn, nhưng mình nghĩ ra được thêm test case như 001234 thì sẽ sai:/
test 5,6 là gì vậy mọi người
giới hạn test sợ vãi
sir admin
var n:string; begin readln(n); if n[1]='-' then delete(n,1,1); write(length(n));
end.
tes cuoi sao vay moi nguoi
Bài này mình không dùng length thì có khả thi ko mọi người ?
Test cuối là gì vậy mọi người?
Em check lại giới hạn của đề bài nhé.
n = int(input())
count = 0 while n != 0: n //= 10 count += 1 print(count) bị lỗi tle thì giờ sửa thuật toán kiểu gì mọi người
thiết nghĩ nên để bài này là dễ chăng?
xin code banj oi
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
bai nay sai string roi xuat cai chieu dai cua string la ra ra,neu co dua tru thi xoa dau tru ra khoi string
xóa dấu - ra khỏi chuỗi kiểu j thế ạ?
Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.
cho em hỏi kiểu dữ liệu của n là gì ạ ?
string nha bạn
ông làm đung hết test không á?
trong test này có số âm bạn xóa dấu âm ra rồi in length ra