#P2498. StuPId
StuPId
描述
背景
在梦幻理工大学(DUT,Dreamland University of Technology),所有学生都有个人ID,这些ID是六位数或七位数。但这些数字并非普通数字,只有校验和的最后一位为零的ID才是有效ID。
问题
计算ID号码校验和的方法如下:从后向前(!)将ID号码的每一位数字与重复的因子9、3、7相乘,然后将这些乘积相加。例如: ID号码:1 3 9 0 2 7 2 因子:9 7 3 9 7 3 9 乘积:9 21 27 0 14 21 18 这里的校验和为。最后一位是零,所以这个ID是有效的。有时学生的书写非常潦草,助教很难识别ID。在特殊情况下,即恰好有一位数字难以辨认时,需要你提供帮助。在这种情况下,可以计算出缺失的数字(由于9、3和7与10互质,所以总是恰好有一个正确的数字)。请注意,学生一开始总是比较专注,所以ID的首位数字总是清晰可读的(且不为零)。
输入
第一行包含测试用例的数量。每个测试用例占一行,包含一个六位数或七位数的ID号码,其中有一位数字被问号“?”代替。
输出
每个测试用例的输出以一行“Scenario #i:”开头,其中是从1开始的测试用例编号。然后打印一行包含正确的ID号码。每个测试用例的输出以一个空行结束。
输入数据1
4
13?0272
3?5678
345?78
314?592
输出数据1
Scenario #1:
1390272
Scenario #2:
335678
Scenario #3:
345778
Scenario #4:
3146592
提示
输入和输出数据量巨大,建议使用scanf和printf。
来源
2005年德国达姆施塔特工业大学编程竞赛(训练赛)