# 黎明高中資訊社第一次模擬平時考(*試辦*)
---
## 說明:
社長或副社長將從itsa或者zero judge挑選出3至4題的題目,基本上都不會選有出現在資訊社資源目錄的,難度隨題號遞增,在社團課抑或週六課程時將驗收,選擇自己會寫的先做,目前都是你們能夠解決的。
## 完成者填寫說明:
若已答題且正確完畢,請寫上自己的姓名,可以自己新增更多名次(如第一題有到11名,可以繼續增加),有空社長將抽查答對者的想法與程式,一切採自由心證,當然我回去看報表核對。
## 時間:
2020/03/23至2020/04/01 <10 p.m>(愚人節)
## 獎勵:
副社長將提供價值(10±1)元的茶葉蛋10顆,完成兩題以上者(前10名)。
## 社長的話:
> [name=風思]
> 期盼各位能更加認真~
> [color=#db27ab]
## 解答:
已釋出如下。
---
### 1.[[C_MM85-易] 完美數問題](https://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?id=2295)
#### 問題敘述:一個正整數稱為完美數,如果此數等於其因數 ( 不包括本身,不限為質因數 ) 的和。例如: 6 是一個完美數因為 6 = 1+2+3 。請撰寫一個函式 isPerfect() 來判斷傳進去的參數是否為一完美數。並寫一個主程式運用這個 isPerfect() 函式來判斷自 1 到任意指定正整數之間哪些整數是完美數,將它們列印在螢幕上。
### 完成者:
範例:
1. <曾俊翔>
> [time=Sat, Mar 28, 2020 2:59 PM]
2. <李晨維>
> [time=Sat, Mar 28, 2020 3:02 PM]
3. <張嘉元>
> [time=Sat, Mar 28, 2020 3:02 PM]
4. <柯昀杰>
> [time=Sat, Mar 28, 2020 3:06 PM]
5. <吳冠毅>
> [time=Sun, Mar 29, 2020 7:58 AM]
6. <郭浩雲>
> [time=Sun, Mar 29, 2020 8:12 AM]
7. <賴晨興>
> [time=Wed, Apr 1, 2020 11:17 AM]
### 參考解答:
#### C++:
(照題目意思來)
```cpp=
#include <iostream>
using namespace std;
bool isPerfect(int n){
int sum=0;
for(int i=1; i<n; i++){
if(n%i==0)
sum+=i;
}
if(n==sum)
return true;
else
return false;
}
int main(){
int n;
cin >> n;
for(int i=6; i<=n; i+=2){
if(isPerfect(i)){
if(i!=6)
cout << " ";
cout << i;
}
}
cout << " is perfect number" << endl;
return 0;
}
```
#### C:
```cpp=
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]){
int a,i,j,sum=0;
scanf("%d",&a);
for(i=6; i<=a; i++){
sum=0;
for(j=1; j<i; j++){
if(i%j==0)
sum+=j;
}
if(sum==i){
if(i==6)
printf("%d",i);
else
printf(" %d",i);
}
}
printf(" is perfect number\n");
return 0;
}
```
---
### 2.[[C_MM058-中] 二項式求解](https://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?id=1903)
#### 問題敘述:給定一二項式,ax+by=c,輸入3個整數,a,b,c,求出所有x,y之非負整數解,並將其解依序列出。例a=2, b=3, c=10, 2x+3y=10, 解答為x=2,y=2和x=5,y=0;結果列出如下所示:
```
2,2
5,0
```
### 完成者:
1. <張嘉元>
> [time=Sat, Mar 28, 2020 3:02 PM]
2. <李晨維>
> [time=Sat, Mar 28, 2020 3:02 PM]
3. <吳冠毅>
> [time=Sun, Mar 29, 2020 8:00 AM]
4. <柯昀杰>
> [time=Sun, Mar 29, 2020 12:14 PM]
5. <郭浩雲>
> [time=Wed, Apr 1, 2020 10:45 PM]
### 參考解答:
#### Java:
```java=
import java.util.*;
//[C_MM058-中] 二項式求解
//2020,03,17;10:24
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String[] binomial = sc.nextLine().split(",");
int a = Integer.parseInt(binomial[0]);
int b = Integer.parseInt(binomial[1]);
int c = Integer.parseInt(binomial[2]);
for (int x = 0; x <= c; x++) {
for (int y = 0; y <= c; y++) {
if (a * x + b * y == c) {
System.out.println(x + "," + y);
}
}
}
}
}
```
---
### 3.[[C_MM070-易] 等邊三角方塊](https://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?id=2057)
#### 問題敘述:給定1個數字A(個方塊),求N。N為最大可以構成的等邊三角方塊
### 完成者:
1. <張嘉元>
> [time=Sat, Mar 28, 2020 3:03 PM]
2. <李晨維>
> [time=Sat, Mar 28, 2020 3:03 PM]
3. <吳冠毅>
> [time=Sun, Mar 29, 2020 8:00 AM]
4. <柯昀杰>
> [time=Wed, Apr 1, 2020 10:30 AM]
5. <郭浩雲>
> [time=Wed, Apr 1, 2020 10:45 PM]
### 參考解答:
#### C++:
```cpp=
#include <bits/stdc++.h>
using namespace std;
int main(){
int A,N,sum;
while(cin >> A){
sum=0;
for(int i=1; true; i++){
sum+=i;
if(sum>A){
N=i-1;
break;
}
}
cout << N << endl;
}
return 0;
}
```
---
### 4.[[C_MM075-易] 店家找錢](https://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?id=2081)
#### 問題敘述:小明到趨程式買大華的生日禮物,但是很遺憾的她身上只剩下千元大鈔,他想知道如果店家零錢分別的個數為已知,那他買了N元的禮物K個之後,會把千元大鈔最少換成多少個零錢(零錢有500、100、50、10、5、1)。
### 完成者:
1. <李晨維>
> [time=Sat, Mar 28, 2020 3:03 PM]
2. <柯昀杰>
> [time=Sun, Mar 29, 2020 12:28 AM]
3. <吳冠毅>
> [time=Sun, Mar 29, 2020 8:01 AM]
4. <郭浩雲>
> [time=Sun, Mar 29, 2020 8:12 AM]
5. <張嘉元>
> [time=Wed, Apr 1, 2020 11:25 AM]
6. <何承煜>
> [time=Thu, Apr 2, 2020 7:23 AM]
### 參考解答:
#### C++:
```cpp=
#include <bits/stdc++.h>
using namespace std;
int main(){
int K,N,count=0;
int arr[6][2]= {{0,500},{0,100},{0,50},{0,10},{0,5},{0,1}};
cin >> K >> N;
for(int i=0; i<6; i++)
cin >> arr[i][0];
int money = 1000-(K*N);
for(int i=0; i<6;){
if(money>=arr[i][1]){
while(arr[i][0]>0 and money>=arr[i][1]){
count++;
arr[i][0]--;
money-=arr[i][1];
}
i++;
}
else
i++;
}
cout << count << endl;
return 0;
}
```
---
## 統計表
| 第一題 | 第二題 | 第三題 | 第四題 | 全對者 |
|:------:|:------:|:------:|:------:|:------:|
| 6 | 5 | 5 | 6 | 4 |
> [time=Wed, Apr 1, 2020 10:43 PM]
---
###### tags: `社內考試`