koppeling voorkomst, ander algoritme
This commit is contained in:
parent
b08239daba
commit
984c1e3005
|
@ -11,36 +11,41 @@
|
|||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<leaf>
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file leaf-file-name="Dictee.java" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/src/com/brainbaking/dictee/Dictee.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="370">
|
||||
<caret line="49" column="0" lean-forward="true" selection-start-line="49" selection-start-column="0" selection-end-line="49" selection-end-column="0" />
|
||||
<state relative-caret-position="986">
|
||||
<caret line="58" column="0" lean-forward="false" selection-start-line="58" selection-start-column="0" selection-end-line="58" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
<element signature="e#1018#1024#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="Diff.java" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/com/brainbaking/dictee/Diff.java">
|
||||
<file leaf-file-name="Tuple.java" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/src/com/brainbaking/dictee/Tuple.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="256">
|
||||
<caret line="19" column="31" lean-forward="false" selection-start-line="19" selection-start-column="31" selection-end-line="19" selection-end-column="31" />
|
||||
<state relative-caret-position="300">
|
||||
<caret line="20" column="45" lean-forward="false" selection-start-line="20" selection-start-column="45" selection-end-line="20" selection-end-column="45" />
|
||||
<folding>
|
||||
<element signature="e#172#173#0" expanded="true" />
|
||||
<element signature="e#200#201#0" expanded="true" />
|
||||
<element signature="e#392#393#0" expanded="true" />
|
||||
<element signature="e#432#433#0" expanded="true" />
|
||||
<element signature="e#493#494#0" expanded="true" />
|
||||
<element signature="e#541#542#0" expanded="true" />
|
||||
<element signature="e#597#598#0" expanded="true" />
|
||||
<element signature="e#645#646#0" expanded="true" />
|
||||
<element signature="e#691#692#0" expanded="true" />
|
||||
<element signature="e#750#751#0" expanded="true" />
|
||||
<element signature="e#208#209#0" expanded="true" />
|
||||
<element signature="e#251#252#0" expanded="true" />
|
||||
<element signature="e#310#311#0" expanded="true" />
|
||||
<element signature="e#368#369#0" expanded="true" />
|
||||
<element signature="e#437#438#0" expanded="true" />
|
||||
<element signature="e#498#499#0" expanded="true" />
|
||||
<element signature="e#542#543#0" expanded="true" />
|
||||
<element signature="e#598#599#0" expanded="true" />
|
||||
<element signature="e#641#642#0" expanded="true" />
|
||||
<element signature="e#683#684#0" expanded="true" />
|
||||
<element signature="e#724#725#0" expanded="true" />
|
||||
<element signature="e#764#765#0" expanded="true" />
|
||||
<element signature="e#793#794#0" expanded="true" />
|
||||
<element signature="e#821#822#0" expanded="true" />
|
||||
<element signature="e#1075#1076#0" expanded="true" />
|
||||
<element signature="e#1141#1142#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -49,12 +54,12 @@
|
|||
<file leaf-file-name="DicteeTests.java" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/test/com/brainbaking/dictee/DicteeTests.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="341">
|
||||
<caret line="20" column="0" lean-forward="true" selection-start-line="20" selection-start-column="0" selection-end-line="20" selection-end-column="0" />
|
||||
<state relative-caret-position="960">
|
||||
<caret line="64" column="0" lean-forward="false" selection-start-line="64" selection-start-column="0" selection-end-line="64" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
<element signature="e#1807#1808#0" expanded="true" />
|
||||
<element signature="e#1869#1870#0" expanded="true" />
|
||||
<element signature="e#2176#2177#0" expanded="true" />
|
||||
<element signature="e#2238#2239#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -77,8 +82,9 @@
|
|||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/test/com/brainbaking/dictee/DicteeTests.java" />
|
||||
<option value="$PROJECT_DIR$/src/com/brainbaking/dictee/Diff.java" />
|
||||
<option value="$PROJECT_DIR$/test/com/brainbaking/dictee/DicteeTests.java" />
|
||||
<option value="$PROJECT_DIR$/src/com/brainbaking/dictee/Tuple.java" />
|
||||
<option value="$PROJECT_DIR$/src/com/brainbaking/dictee/Dictee.java" />
|
||||
</list>
|
||||
</option>
|
||||
|
@ -88,6 +94,25 @@
|
|||
<option name="width" value="720" />
|
||||
<option name="height" value="436" />
|
||||
</component>
|
||||
<component name="ProjectInspectionProfilesVisibleTreeState">
|
||||
<entry key="Project Default">
|
||||
<profile-state>
|
||||
<expanded-state>
|
||||
<State>
|
||||
<id />
|
||||
</State>
|
||||
<State>
|
||||
<id>Spelling</id>
|
||||
</State>
|
||||
</expanded-state>
|
||||
<selected-state>
|
||||
<State>
|
||||
<id>SpellCheckingInspection</id>
|
||||
</State>
|
||||
</selected-state>
|
||||
</profile-state>
|
||||
</entry>
|
||||
</component>
|
||||
<component name="ProjectView">
|
||||
<navigator currentView="ProjectPane" proportions="" version="1">
|
||||
<flattenPackages />
|
||||
|
@ -103,10 +128,10 @@
|
|||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="AndroidView" />
|
||||
<pane id="PackagesPane" />
|
||||
<pane id="Scope" />
|
||||
<pane id="Scratches" />
|
||||
<pane id="Scope" />
|
||||
<pane id="PackagesPane" />
|
||||
<pane id="AndroidView" />
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
|
@ -154,6 +179,7 @@
|
|||
<property name="project.structure.last.edited" value="Libraries" />
|
||||
<property name="project.structure.proportion" value="0.0" />
|
||||
<property name="project.structure.side.proportion" value="0.2" />
|
||||
<property name="extract.method.default.visibility" value="private" />
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
|
@ -264,6 +290,56 @@
|
|||
<envs />
|
||||
<patterns />
|
||||
</configuration>
|
||||
<configuration name="DicteeTests.combinatieGeval_zonderHoofdletters" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
||||
<pattern>
|
||||
<option name="PATTERN" value="com.brainbaking.dictee.*" />
|
||||
<option name="ENABLED" value="true" />
|
||||
</pattern>
|
||||
</extension>
|
||||
<module name="java" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PACKAGE_NAME" value="com.brainbaking.dictee" />
|
||||
<option name="MAIN_CLASS_NAME" value="com.brainbaking.dictee.DicteeTests" />
|
||||
<option name="METHOD_NAME" value="combinatieGeval_zonderHoofdletters(java.lang.String)" />
|
||||
<option name="TEST_OBJECT" value="method" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<patterns />
|
||||
</configuration>
|
||||
<configuration name="DicteeTests.hoofdletters" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea">
|
||||
<pattern>
|
||||
<option name="PATTERN" value="com.brainbaking.dictee.*" />
|
||||
<option name="ENABLED" value="true" />
|
||||
</pattern>
|
||||
</extension>
|
||||
<module name="java" />
|
||||
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
|
||||
<option name="ALTERNATIVE_JRE_PATH" />
|
||||
<option name="PACKAGE_NAME" value="com.brainbaking.dictee" />
|
||||
<option name="MAIN_CLASS_NAME" value="com.brainbaking.dictee.DicteeTests" />
|
||||
<option name="METHOD_NAME" value="hoofdletters(java.lang.String)" />
|
||||
<option name="TEST_OBJECT" value="method" />
|
||||
<option name="VM_PARAMETERS" value="-ea" />
|
||||
<option name="PARAMETERS" />
|
||||
<option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
|
||||
<option name="ENV_VARIABLES" />
|
||||
<option name="PASS_PARENT_ENVS" value="true" />
|
||||
<option name="TEST_SEARCH_SCOPE">
|
||||
<value defaultName="singleModule" />
|
||||
</option>
|
||||
<envs />
|
||||
<patterns />
|
||||
</configuration>
|
||||
<configuration default="true" type="JUnit" factoryName="JUnit">
|
||||
<extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
|
||||
<module name="" />
|
||||
|
@ -324,16 +400,20 @@
|
|||
<option name="PROGRAM_PARAMETERS" />
|
||||
<predefined_log_file id="idea.log" enabled="true" />
|
||||
</configuration>
|
||||
<list size="3">
|
||||
<list size="5">
|
||||
<item index="0" class="java.lang.String" itemvalue="JUnit.DicteeTests" />
|
||||
<item index="1" class="java.lang.String" itemvalue="JUnit.DicteeTests.basisGevallen_zelfdeGrootte" />
|
||||
<item index="2" class="java.lang.String" itemvalue="JUnit.DicteeTests.combinatieGeval_hoofdLetterEnKleineLetters" />
|
||||
<item index="3" class="java.lang.String" itemvalue="JUnit.DicteeTests.hoofdletters" />
|
||||
<item index="4" class="java.lang.String" itemvalue="JUnit.DicteeTests.combinatieGeval_zonderHoofdletters" />
|
||||
</list>
|
||||
<recent_temporary>
|
||||
<list size="3">
|
||||
<list size="5">
|
||||
<item index="0" class="java.lang.String" itemvalue="JUnit.DicteeTests" />
|
||||
<item index="1" class="java.lang.String" itemvalue="JUnit.DicteeTests.combinatieGeval_hoofdLetterEnKleineLetters" />
|
||||
<item index="2" class="java.lang.String" itemvalue="JUnit.DicteeTests.basisGevallen_zelfdeGrootte" />
|
||||
<item index="1" class="java.lang.String" itemvalue="JUnit.DicteeTests.combinatieGeval_zonderHoofdletters" />
|
||||
<item index="2" class="java.lang.String" itemvalue="JUnit.DicteeTests.hoofdletters" />
|
||||
<item index="3" class="java.lang.String" itemvalue="JUnit.DicteeTests.combinatieGeval_hoofdLetterEnKleineLetters" />
|
||||
<item index="4" class="java.lang.String" itemvalue="JUnit.DicteeTests.basisGevallen_zelfdeGrootte" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
|
@ -354,66 +434,66 @@
|
|||
<servers />
|
||||
</component>
|
||||
<component name="TestHistory">
|
||||
<history-entry file="DicteeTests - 2018.03.14 at 22h 11m 09s.xml">
|
||||
<history-entry file="DicteeTests - 2018.03.17 at 19h 10m 47s.xml">
|
||||
<configuration name="DicteeTests" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="DicteeTests - 2018.03.14 at 22h 12m 58s.xml">
|
||||
<history-entry file="DicteeTests - 2018.03.17 at 19h 11m 53s.xml">
|
||||
<configuration name="DicteeTests" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="DicteeTests - 2018.03.14 at 22h 19m 54s.xml">
|
||||
<history-entry file="DicteeTests - 2018.03.17 at 19h 14m 38s.xml">
|
||||
<configuration name="DicteeTests" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="DicteeTests - 2018.03.14 at 22h 20m 38s.xml">
|
||||
<history-entry file="DicteeTests - 2018.03.17 at 19h 15m 17s.xml">
|
||||
<configuration name="DicteeTests" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="DicteeTests_combinatieGeval_hoofdLetterEnKleineLetters - 2018.03.14 at 22h 14m 42s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_hoofdLetterEnKleineLetters" configurationId="JUnit" />
|
||||
<history-entry file="DicteeTests - 2018.03.17 at 19h 16m 35s.xml">
|
||||
<configuration name="DicteeTests" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="DicteeTests_combinatieGeval_hoofdLetterEnKleineLetters - 2018.03.14 at 22h 14m 58s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_hoofdLetterEnKleineLetters" configurationId="JUnit" />
|
||||
<history-entry file="DicteeTests_combinatieGeval_zonderHoofdletters - 2018.03.17 at 18h 28m 11s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_zonderHoofdletters" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="DicteeTests_combinatieGeval_hoofdLetterEnKleineLetters - 2018.03.14 at 22h 16m 00s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_hoofdLetterEnKleineLetters" configurationId="JUnit" />
|
||||
<history-entry file="DicteeTests_combinatieGeval_zonderHoofdletters - 2018.03.17 at 18h 28m 22s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_zonderHoofdletters" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="DicteeTests_combinatieGeval_hoofdLetterEnKleineLetters - 2018.03.14 at 22h 17m 00s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_hoofdLetterEnKleineLetters" configurationId="JUnit" />
|
||||
<history-entry file="DicteeTests_combinatieGeval_zonderHoofdletters - 2018.03.17 at 18h 28m 57s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_zonderHoofdletters" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="DicteeTests_combinatieGeval_hoofdLetterEnKleineLetters - 2018.03.14 at 22h 18m 30s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_hoofdLetterEnKleineLetters" configurationId="JUnit" />
|
||||
<history-entry file="DicteeTests_combinatieGeval_zonderHoofdletters - 2018.03.17 at 18h 29m 23s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_zonderHoofdletters" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
<history-entry file="DicteeTests_combinatieGeval_hoofdLetterEnKleineLetters - 2018.03.14 at 22h 19m 45s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_hoofdLetterEnKleineLetters" configurationId="JUnit" />
|
||||
<history-entry file="DicteeTests_combinatieGeval_zonderHoofdletters - 2018.03.17 at 19h 10m 05s.xml">
|
||||
<configuration name="DicteeTests.combinatieGeval_zonderHoofdletters" configurationId="JUnit" />
|
||||
</history-entry>
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="0" y="23" width="1280" height="873" extended-state="6" />
|
||||
<frame x="0" y="23" width="1440" height="873" extended-state="6" />
|
||||
<layout>
|
||||
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32958803" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Palette	" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32958803" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Palette	" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Run" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.32958803" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.28125" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.125" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.39950064" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
</layout>
|
||||
</component>
|
||||
<component name="VcsContentAnnotationSettings">
|
||||
|
@ -421,25 +501,18 @@
|
|||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager>
|
||||
<breakpoints>
|
||||
<line-breakpoint enabled="true" type="java-line">
|
||||
<url>file://$PROJECT_DIR$/src/com/brainbaking/dictee/Dictee.java</url>
|
||||
<line>56</line>
|
||||
<properties />
|
||||
<option name="timeStamp" value="2" />
|
||||
</line-breakpoint>
|
||||
<line-breakpoint enabled="true" type="java-line">
|
||||
<url>file://$PROJECT_DIR$/src/com/brainbaking/dictee/Dictee.java</url>
|
||||
<line>37</line>
|
||||
<properties />
|
||||
<option name="timeStamp" value="3" />
|
||||
</line-breakpoint>
|
||||
</breakpoints>
|
||||
<option name="time" value="4" />
|
||||
<option name="time" value="8" />
|
||||
</breakpoint-manager>
|
||||
<watches-manager />
|
||||
</component>
|
||||
<component name="debuggerHistoryManager">
|
||||
<expressions id="breakpointCondition">
|
||||
<expression>
|
||||
<expression-string>in == (int) 'k'</expression-string>
|
||||
<language-id>JAVA</language-id>
|
||||
<evaluation-mode>EXPRESSION</evaluation-mode>
|
||||
</expression>
|
||||
</expressions>
|
||||
<expressions id="evaluateExpression">
|
||||
<expression>
|
||||
<expression-string>input.split("\\|")</expression-string>
|
||||
|
@ -459,52 +532,94 @@
|
|||
</expressions>
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="jar:///Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home/lib/src.zip!/java.base/java/lang/NumberFormatException.java">
|
||||
<entry file="file://$PROJECT_DIR$/src/com/brainbaking/dictee/Dictee.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="169">
|
||||
<caret line="64" column="0" lean-forward="false" selection-start-line="64" selection-start-column="0" selection-end-line="64" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/test/com/brainbaking/dictee/DicteeTests.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="341">
|
||||
<caret line="20" column="0" lean-forward="true" selection-start-line="20" selection-start-column="0" selection-end-line="20" selection-end-column="0" />
|
||||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
<element signature="e#1807#1808#0" expanded="true" />
|
||||
<element signature="e#1869#1870#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/com/brainbaking/dictee/Diff.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="256">
|
||||
<state relative-caret-position="240">
|
||||
<caret line="19" column="31" lean-forward="false" selection-start-line="19" selection-start-column="31" selection-end-line="19" selection-end-column="31" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/test/com/brainbaking/dictee/DicteeTests.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="240">
|
||||
<caret line="20" column="0" lean-forward="true" selection-start-line="20" selection-start-column="0" selection-end-line="20" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="e#172#173#0" expanded="true" />
|
||||
<element signature="e#200#201#0" expanded="true" />
|
||||
<element signature="e#392#393#0" expanded="true" />
|
||||
<element signature="e#432#433#0" expanded="true" />
|
||||
<element signature="e#493#494#0" expanded="true" />
|
||||
<element signature="e#541#542#0" expanded="true" />
|
||||
<element signature="e#597#598#0" expanded="true" />
|
||||
<element signature="e#645#646#0" expanded="true" />
|
||||
<element signature="e#691#692#0" expanded="true" />
|
||||
<element signature="e#750#751#0" expanded="true" />
|
||||
<element signature="imports" expanded="true" />
|
||||
<element signature="e#2176#2177#0" expanded="true" />
|
||||
<element signature="e#2238#2239#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar:///Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home/lib/src.zip!/java.base/java/lang/NumberFormatException.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="169">
|
||||
<caret line="64" column="0" lean-forward="false" selection-start-line="64" selection-start-column="0" selection-end-line="64" selection-end-column="0" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/com/brainbaking/dictee/Diff.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="285">
|
||||
<caret line="19" column="31" lean-forward="false" selection-start-line="19" selection-start-column="31" selection-end-line="19" selection-end-column="31" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/com/brainbaking/dictee/Tuple.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="300">
|
||||
<caret line="20" column="45" lean-forward="false" selection-start-line="20" selection-start-column="45" selection-end-line="20" selection-end-column="45" />
|
||||
<folding>
|
||||
<element signature="e#208#209#0" expanded="true" />
|
||||
<element signature="e#251#252#0" expanded="true" />
|
||||
<element signature="e#310#311#0" expanded="true" />
|
||||
<element signature="e#368#369#0" expanded="true" />
|
||||
<element signature="e#437#438#0" expanded="true" />
|
||||
<element signature="e#498#499#0" expanded="true" />
|
||||
<element signature="e#542#543#0" expanded="true" />
|
||||
<element signature="e#598#599#0" expanded="true" />
|
||||
<element signature="e#641#642#0" expanded="true" />
|
||||
<element signature="e#683#684#0" expanded="true" />
|
||||
<element signature="e#724#725#0" expanded="true" />
|
||||
<element signature="e#764#765#0" expanded="true" />
|
||||
<element signature="e#793#794#0" expanded="true" />
|
||||
<element signature="e#821#822#0" expanded="true" />
|
||||
<element signature="e#1075#1076#0" expanded="true" />
|
||||
<element signature="e#1141#1142#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/test/com/brainbaking/dictee/DicteeTests.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="960">
|
||||
<caret line="64" column="0" lean-forward="false" selection-start-line="64" selection-start-column="0" selection-end-line="64" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
<element signature="e#2176#2177#0" expanded="true" />
|
||||
<element signature="e#2238#2239#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/src/com/brainbaking/dictee/Dictee.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="370">
|
||||
<caret line="49" column="0" lean-forward="true" selection-start-line="49" selection-start-column="0" selection-end-line="49" selection-end-column="0" />
|
||||
<state relative-caret-position="986">
|
||||
<caret line="58" column="0" lean-forward="false" selection-start-line="58" selection-start-column="0" selection-end-line="58" selection-end-column="0" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
<element signature="e#1018#1024#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
|
|
@ -1,68 +1,86 @@
|
|||
package com.brainbaking.dictee;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Stack;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class Dictee {
|
||||
|
||||
|
||||
private final String invoer;
|
||||
private final String referentie;
|
||||
|
||||
public Dictee(String invoer, String referentie) {
|
||||
this.invoer = invoer;
|
||||
this.referentie = referentie;
|
||||
|
||||
System.out.println("Dictee: invoer \t" + invoer);
|
||||
System.out.println("Dictee: referentie \t" + referentie);
|
||||
}
|
||||
|
||||
private List<Character> getInvoerChars() {
|
||||
return invoer.chars().mapToObj(e->((char)e)).collect(Collectors.toList());
|
||||
}
|
||||
private Tuple zoekIndexInInvoer(int in, List<Tuple> tuples) {
|
||||
List<Tuple> laatstVoorkomendeTuple = tuples.stream().filter(t -> t.isChar(in)).collect(Collectors.toList());
|
||||
int index = !laatstVoorkomendeTuple.isEmpty() ? laatstVoorkomendeTuple.get(laatstVoorkomendeTuple.size() - 1).getIndex() + 1 : 0;
|
||||
|
||||
private List<Character> getReferentie() {
|
||||
return referentie.chars().mapToObj(e->((char)e)).collect(Collectors.toList());
|
||||
int charTeZoeken = Character.isUpperCase(in) ? Character.toLowerCase(in) : Character.toUpperCase(in);
|
||||
int indexFromIndexHf = invoer.indexOf(charTeZoeken, index);
|
||||
int indexFromIndexGewoon = invoer.indexOf(in, index);
|
||||
|
||||
if(indexFromIndexGewoon >= 0 && indexFromIndexHf >= 0 && indexFromIndexGewoon > indexFromIndexHf) {
|
||||
return Tuple.hoofdletter(in, indexFromIndexHf);
|
||||
} else if(indexFromIndexGewoon == -1 && indexFromIndexHf >= 0) {
|
||||
return Tuple.hoofdletter(in, indexFromIndexHf);
|
||||
} else if(indexFromIndexGewoon == -1) {
|
||||
return Tuple.nietGevonden(in);
|
||||
}
|
||||
|
||||
return new Tuple(in, indexFromIndexGewoon);
|
||||
}
|
||||
|
||||
public int verbeter() {
|
||||
List<Character> in = getInvoerChars();
|
||||
List<Character> inLower = in.stream().map(Character::toLowerCase).collect(Collectors.toList());
|
||||
List<Diff> diffs = new ArrayList<Diff>();
|
||||
List<Tuple> tuples = berekenTupleLijst();
|
||||
int score = 0;
|
||||
|
||||
for(int i = 0; i < getReferentie().size(); i++) {
|
||||
char refCurr = getReferentie().get(i);
|
||||
printStartDictee(tuples);
|
||||
|
||||
int index = in.indexOf(refCurr);
|
||||
if(index >= 0) {
|
||||
in.remove(index);
|
||||
} else {
|
||||
int lowerIndex = inLower.indexOf(Character.toLowerCase(refCurr));
|
||||
if(lowerIndex >= 0) {
|
||||
diffs.add(Diff.hoofdletter(refCurr, i));
|
||||
|
||||
in.remove((Character) Character.toLowerCase(refCurr));
|
||||
in.remove((Character) Character.toUpperCase(refCurr));
|
||||
} else {
|
||||
diffs.add(Diff.create(refCurr, i));
|
||||
|
||||
in.remove(getInvoerChars().get(i));
|
||||
}
|
||||
for(int i = 0; i < tuples.size() - 1; i++) {
|
||||
Tuple curr = tuples.get(i);
|
||||
Tuple next = tuples.get(i + 1);
|
||||
|
||||
if(curr.komtNietVoor()) {
|
||||
score += 2;
|
||||
} else if(curr.komtNietVoor() && next.komtNietVoor()) {
|
||||
score += 2 * 2;
|
||||
} else if(next.getIndex() - curr.getIndex() > 1) {
|
||||
score += 2;
|
||||
}
|
||||
|
||||
score += curr.getExtraMinpunt();
|
||||
|
||||
System.out.println("vgl " + i + " " + curr + " met " + (i + 1) + " " + next + " -- score: " + score);
|
||||
}
|
||||
|
||||
List<Diff> diffsInLengte = in.stream().map(Diff::create).collect(Collectors.toList());
|
||||
if(diffsInLengte.size() != diffs.size()) {
|
||||
diffs.addAll(diffsInLengte);
|
||||
score += verhoogScoreIndienBeginGemist(tuples, score);
|
||||
return score;
|
||||
}
|
||||
|
||||
private int verhoogScoreIndienBeginGemist(List<Tuple> tuples, int score) {
|
||||
List<Integer> indexes = tuples.stream().mapToInt(t -> t.getIndex()).boxed().collect(Collectors.toList());
|
||||
if(!indexes.contains(0) && !indexes.contains(-1)) {
|
||||
return 2;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
diffs.forEach(System.out::println);
|
||||
private List<Tuple> berekenTupleLijst() {
|
||||
List<Tuple> tuples = new ArrayList<>();
|
||||
for(int refI = 0; refI < referentie.length(); refI++) {
|
||||
char ch = referentie.charAt(refI);
|
||||
tuples.add(zoekIndexInInvoer(ch, tuples));
|
||||
}
|
||||
return tuples;
|
||||
}
|
||||
|
||||
return diffs.stream()
|
||||
.mapToInt(d -> d.getScore())
|
||||
.sum();
|
||||
private void printStartDictee(List<Tuple> tuples) {
|
||||
System.out.println("dictee voor ref: '" + referentie + "' tegen invoer: '" + invoer + "'");
|
||||
tuples.forEach(System.out::print);
|
||||
System.out.println();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,35 +0,0 @@
|
|||
package com.brainbaking.dictee;
|
||||
|
||||
public class Diff {
|
||||
|
||||
private final char aChar;
|
||||
private final int refIndex;
|
||||
private final int score;
|
||||
|
||||
public int getScore() {
|
||||
return score;
|
||||
}
|
||||
|
||||
private Diff(char aChar, int index, int score) {
|
||||
this.aChar = aChar;
|
||||
this.refIndex = index;
|
||||
this.score = score;
|
||||
}
|
||||
|
||||
public static Diff create(char aChar) {
|
||||
return create(aChar, -1);
|
||||
}
|
||||
|
||||
public static Diff hoofdletter(char aChar, int index) {
|
||||
return new Diff(aChar, index, 1);
|
||||
}
|
||||
|
||||
public static Diff create(char aChar, int index) {
|
||||
return new Diff(aChar, index, 2);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return aChar + "@" + refIndex + "-" + score;
|
||||
}
|
||||
}
|
|
@ -19,6 +19,17 @@ public class DicteeTests {
|
|||
assertEquals(expected, dictee.verbeter());
|
||||
}
|
||||
|
||||
@ParameterizedTest
|
||||
@ValueSource(strings = {
|
||||
"sup dikke kerels|wup dikke kerel|4",
|
||||
"sup dikke kerels|wup dikke kerels|2" })
|
||||
public void combinatieGeval_zonderHoofdletters(String input) {
|
||||
Dictee dictee = createDictee(input);
|
||||
int expected = getExpected(input);
|
||||
|
||||
assertEquals(expected, dictee.verbeter());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void uitgebreidGeval() {
|
||||
Dictee dictee = new Dictee("mogelike drangken zijn water cola fruitsap",
|
||||
|
|
Loading…
Reference in New Issue