社区讨论

50蒟蒻求助!!!

P1055[NOIP 2008 普及组] ISBN 号码参与者 1已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@lygq24g7
此快照首次捕获于
2024/07/11 11:41
2 年前
此快照最后确认于
2024/07/11 13:56
2 年前
查看原帖
代码样例过了,但是只得了50分……
CPP
#include <iostream>
#include <cstdio>
#include <cstring>
#include <iomanip>
#include <algorithm>
#include <vector>
#include <cmath>
#include <queue>
#include <stack>
#include <map>
#include <cstdlib>
#include <cctype>
#define ll long long
#define sll static long long
#define db double
#define sti string
#define sint static int
#define lint inline int
#define lb inline bool
#define lll inline long long
using namespace std;
int TurnNum(char);
sti isbn;
int main() {
	cin >> isbn;
	string a = isbn.substr(0, 1);
	string b = isbn.substr(2, 3);
	string c = isbn.substr(6, 5);
	int d = TurnNum(isbn[isbn.length() - 1]);
	string sum = a + b + c;
	int ans = 0;
	for (int i = 0; i < sum.length(); i++) {
		ans += TurnNum(sum[i]) * (i + 1);
	}
	if (ans % 11 == d) {
		cout << "Right";
	}
	else {
		cout << a << '-' << b << '-' << c << '-' << ans % 11;
	}
	return 0;
}
int TurnNum(char ch) {
	return ch - '0';
}

哪位大神大佬愿意帮我一下,Thanks♪(・ω・)ノ

回复

1 条回复,欢迎继续交流。

正在加载回复...